Javascript JS正则表达式替换所有介于和之间的内容,包括HTML注释
我试图使用grunt字符串替换来替换两个HTML注释之间的文件内容。我所提出的方法在一条线上都能很好地工作,但就我的一生而言,我无法让它与有多条线的地方相匹配Javascript JS正则表达式替换所有介于和之间的内容,包括HTML注释,javascript,regex,gruntjs,grunt-string-replace,Javascript,Regex,Gruntjs,Grunt String Replace,我试图使用grunt字符串替换来替换两个HTML注释之间的文件内容。我所提出的方法在一条线上都能很好地工作,但就我的一生而言,我无法让它与有多条线的地方相匹配 <!-- START COMMENT -->This matches<!-- END COMMENT --> <!-- START COMMENT --> this doesn't match <!-- END COMMENT --> 在这方面: pattern: "/<!-- S
<!-- START COMMENT -->This matches<!-- END COMMENT -->
<!-- START COMMENT -->
this
doesn't
match
<!-- END COMMENT -->
在这方面:
pattern: "/<!-- START COMMENT -->[\s\S]*?<!-- END COMMENT -->/g",
模式:“/[\s\s]*?/g”,
在正则表达式中有引号。移除它们,它应该可以正常工作:
pattern: /<!-- START COMMENT -->[\s\S]*?<!-- END COMMENT -->/g,
模式:/[\s\s]*?/g,
您是否尝试使用“m”修饰符?(和你的“g”一个)似乎有效fine@Fraser你的代码可以工作。你能展示一下你实际使用这个正则表达式的代码吗?这是我测试的地方:我会用我的解决方案更新帖子谢谢你的帮助@vihan1086我用我的解决方案更新了帖子谢谢你重新指出我在编辑中已经指出的东西,你从中得到了代码示例:)
pattern: "/<!-- START COMMENT -->[\s\S]*?<!-- END COMMENT -->/g",
pattern: /<!-- START COMMENT -->[\s\S]*?<!-- END COMMENT -->/g,