字符串:
1. {@IF var=val}
2. {@IF var}
我目前的模式:
/{@if ([\w]+)(?:|=([\w]+))}/si
我需要的团体(2)
1. {@IF (var)=(val)}
2. {@IF (var)}
我已经使用此正则表达式完成了#2
/{@if ([\w]+)}/si
如何使用单个正则表达式模式匹配#1和#2字符串并生成一个/两个捕获组?
需要一个'g'修饰符。 但是我在php中添加了一个'g'修饰符之后就抛出了一个未知的修饰符错误
答案 0 :(得分:0)
试试:
/@IF (\w+)(?:=(\w+))?/
capture-group 1是“变量名”,capture-group 2是可选的(可能没有设置)值。