字符串替换正则表达式不起作用

String replace regex doesn't work

本文关键字:不起作用 正则表达式 替换 字符串      更新时间:2023-09-26

我试图删除所有控制台。(( 来自字符串或文本,而此代码不起作用,为什么?

var str = "console.log('test')";
var pattern = /console'..*'(.*');/gm;
console.log(str.replace(pattern, ""));

http://plnkr.co/edit/gzFPopi1qdd6PYZz2urM?p=preview

它不起作用,因为在您的测试字符串中没有;但是正则表达式期望一个。只需使用 ? 将其设为可选:

var pattern = /console'..*?'(.*?');?/gm;

还要确保匹配不贪婪.*?

查看下面的测试演示。

var str = "some string console.log('test'); and console.log(123) '
console.log('123', 12, 'asd'); '
test";
alert( str.replace(/console'..*?'(.*?');?/gm, '') );