如果我有这个文本
SELECT 1 FROM users WHERE id =>' / [0-9] /'< AND u =>' / [a-z] /'<
我应该得到结果:
[1] => /[0-9]/
[2] => /[a-z]/
所以,我有这个正则表达式;
\>(.+)\<
但现在它选择:
'/[0-9]/'< AND u = >'/[a-z]/'<
为什么?!?!?我用&lt;结束字符串那应该结束了吗?
答案 0 :(得分:1)
使用Reluctant quantifiers来使用懒惰而不是贪婪。
>(.+?)<
.+
是贪婪量词以贪婪的方式看起来尽可能匹配。
这是demo
注意:我认为无需转义>
和<
另外,您也可以尝试使用Possessive Quantifiers。
>([^<]*+)<
这是demo
更好地使用第二种选择。 Want to Be Lazy? Think Twice.