我想检查一个HTML标签(可能分成多行)是否包含“on”JS触发器。实际的HTML标记和Javascript无关紧要。例如:
<img src="foo.jpg" onblur="foo()"/>Other stuff
我已经使用该模式完成了大部分工作:
<\w+([^>])+?(on\w+)+[\s\S]+?>
然而,这也符合:
<p style="font-size:11px;">Other stuff</p>
我将原始模式修改为:
<\w+([^>])+?(\s)+(on\w+)+[\s\S]+?>
但仅当JS触发器关键字前面有2个或更多空格字符时才匹配。我们将欣赏正确方向的推动。
答案 0 :(得分:0)
可能会工作<\w+(?=\s)[^>]*?\s(on\w+)[\s\S]+?>
答案 1 :(得分:0)
(?m)(?i).*(?=([^a-z]on)).*>
如果它包含on
,请尝试匹配html但如果它是中间字则不匹配