正则表达式删除注释疑惑

看requirejs 源码。使用正则表达式删除代码内部注释的。

var commentRegExp = /(\/\*([\s\S]*?)\*\/|([^:]|^)\/\/(.*)$)/mg;


function commentReplace(match, multi, multiText, singlePrefix) {

    return singlePrefix || '';

}


//如下例子


var func = function(){

/* comment */

console.log('comment') // comment

return ''

}


 func.toString().replace(commentRegExp,commentReplace);

疑惑:

var commentRegExp = /(\/\*([\s\S]*?)\*\/| \/\/(.*)$)/mg;

func.toString().replace(commentRegExp,'')

也可以嘛?

所以问:requirejs 源码里面

commentRegExp = /(\/\*([\s\S]*?)\*\/|([^:]|^)\/\/(.*)$)/mg;


这里的 ([^:]|^) 有什么作用?


波斯汪
浏览 595回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript