DMI*_*DMI 172
对于像.*或的正则表达式.+,附加一个问号(.*?或.+?)以匹配尽可能少的字符.(?:blah)?除非绝对必要,否则可选择匹配某个部分但不匹配,请使用类似的内容(?:blah){0,1}?.对于重复匹配(使用{n,}或{n,m}语法)附加问号以尝试尽可能少地匹配(例如{3,}?或{5,7}?).
关于正则表达式量词的文档也可能有所帮助.
Jon*_*han 36
非贪婪的运算符并不意味着最短的匹配:
abcabk
a.+?k 将匹配整个字符串(在此示例中)而不是仅匹配最后三个符号.
我想找到最小的可能匹配.
这是' a'仍然允许所有匹配的最后一个可能的匹配k.
我想这样做的唯一方法是使用如下表达式:
a[^a]+?k
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
59036 次 |
| 最近记录: |