如何只匹配精确的内联代码,并将两者匹配为两次,而不是匹配。
我希望得到结果:
阵列( [0] => ASD [1] => ASD )
不
阵列( [0] => asdasd )
答案 0 :(得分:2)
http://regexr.com?2uvuu - 使用表达式:
<!--\s+IF\s+([^\s]*)\s-->([^<]*)<!--\sENDIF\s-->
修改强>
考虑到你想要在if语句“tag”中匹配的内容可能有空格,一个稍微慢一点的表达式应该处理“if语句”中的任何内容应该如下(RegExr):< / p>
/<!--\s+IF\s+(.*?)\s-->([^<]*)<!--\sENDIF\s-->/gixsm
如果您希望能够在结果中捕获其他标记(或字符<
)(如果语句为“true”,则需要使用(再次稍慢)表达式(at RegExr):
/<!--\s+IF\s+(.*?)\s-->(.*?)<!--\sENDIF\s-->/gixsm
结束编辑