javascript 中正则的单行与多行

一般情况下我们都是用正则来处理一行字符串,如果要处理多行的字符串怎么办呢?
对于函数:
function a(){

}

是一个多行的字符串,要取函数名,怎么写?
方法一:
因为函数名肯定出现在第一行,所以可以通过:
/^function +([^(]*)/)[1]  来获取

方法二:
将函数名前面的字符和后面的字符都替换掉:
.replace(/
^function +/,"").replace(/\((.|\n)*/m,"");
注意不要写成:
.replace(/^function +/,"").replace(/\([.\n]*/m,"");
因为
1.  dot 在 [] 里面是不能表示任意字符的
2.  dot 也不包含回车
3.  注意m修改选项

留下评论

邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据