正则表达式将标签与<%=%>匹配

时间:2013-09-08 13:32:26

标签: regex

我有这个正则表达式:

/<([a-z]+)([^<]*)(style|Style)="([^"]*)"([^<]*)>/g

匹配任何带有style属性的HTML标记,并且有效。

我添加了[^<]以仅匹配当前的开放标记。

但我还需要将代码与<%=%>字符匹配,例如:

<a href="<%= url %>" style="color:#000">Link</a>

我该怎么办?

1 个答案:

答案 0 :(得分:1)

如果你问我,这是一个奇怪的HTML标签,但我认为应该这样做:

/<([a-z]+)((?:[^<]|<%)*)(style)="([^"]*)"([^<]*)>/gi
                  ^^^

regex101 demo

[^<]*(?:[^<]|<%)*取代,<接受非<%字符或{{1}}。