我有两种类型的评论块
<!-- asdfasd //-->
和
<!--asdfasd-->
<!--
<span onclick="window.open('http://www.abc.com?xyz=asfasdfasd')">magic</span>
-->
我只需要匹配第二个/第三个并且我有这个模式,我尝试了很多组合,但是没有运气。注释还包含所有数字/字母/特殊字符
<!--[\s\S]*?-->
我有两种类型的评论块
<!-- asdfasd //-->
和
<!--asdfasd-->
<!--
<span onclick="window.open('http://www.abc.com?xyz=asfasdfasd')">magic</span>
-->
我只需要匹配第二个/第三个并且我有这个模式,我尝试了很多组合,但是没有运气。注释还包含所有数字/字母/特殊字符
<!--[\s\S]*?-->
<!--(\\?|.|\s).*[^/^/]-->
这对我有用
尝试以下模式:
<!--[\s\S]+?-->
它为我工作。
对于上面发布的确切字符串,这有效:
<!--[^-/]+-->
但是,如果 // 可能在注释中的任何位置,它将不起作用。
我需要更多信息以获得更准确的解决方案
干杯坦纳利
只需使用一个功能:
这是我认为最正确的做法。
var str='<!--asdfasd-->';
var matches= str.match(/<!--.*?(\/*)-->/s)
if (matches&&!matches[1].length>1) alert('You got me :)')
解释:不管它有没有'//'我们先捕获它。
然后我们检查第二个匹配的长度,我们将匹配任意数量的 '/' 。
如果有两个或更多的斜线 - 它会警告“假”;
这应该这样做:
<!--[^\/\s]+-->
试试这个模式:
<!-- *[a-z]+ *-->
它应该适用于<!--asdfasd-->
和<!-- asdfasd -->
编辑
评论还包含所有数字/字母/特殊字符???
好吧,添加所有预期的特殊字符而不要忘记转义:
[a-zA-Z0-9"!\?_-]+