
如何让正则表达式匹配到第一个闭合标签就结束
正则表达式通常会贪婪匹配。这意味着它会尽可能匹配字符串中的字符。如果你想让正则表达式匹配到第一个闭合标签,可以使用一个问号来指定非贪婪匹配。
例如,要匹配以下 html 代码中的第一个
标签:
<p>如图所示</p><p><span>立即学习</span>“<a href="https://pan.quark.cn/s/cb6835dc7db1" style="text-decoration: underline !important; color: blue; font-weight: bolder;" rel="nofollow" target="_blank">前端免费学习笔记(深入)</a>”;</p><p></p>
你可以使用以下正则表达式:
<p>(.*?)(</p>)
其中:
-
和
是要匹配的标签。 - .*? 是匹配标签内容的非贪婪匹配表达式。它会尽可能少地匹配字符,以便更快地找到第一个闭合标签。
- *? 是非贪婪匹配运算符。
使用非贪婪匹配后,正则表达式将匹配到第一个
标签的内容:
如图所示











