正则表达式的引擎是贪婪,只要模式允许,它将匹配尽可能多的字符。
如何匹配满足条件的最短字符?通过在“重复描述字符”(如*,如+)后面添加“?”,可以将匹配模式改成非贪婪。
示例:
在以下的字符串中,我希望能够匹配html的标记符号<span class="ssens">和紧随其后的第一个</span>中的内容。
结果:
如果使用 regexString,匹配结果是“<span> <span class="ssens">an islander</span> is always living in an
island </span>”。
如果使用 regexStringNonGreedy,匹配结果是“<span> <span class="ssens">an islander</span>”。
本文介绍如何在正则表达式中使用非贪婪匹配来选取最短的可能匹配项,通过实例展示了贪婪与非贪婪匹配的区别。
1506

被折叠的 条评论
为什么被折叠?



