我有正則運算式,它可以搜索 html<h>系列標簽,但如果里面有任何其他標簽則不起作用<h>。請參閱下面的示例。
<h([\d]).*>\s*[\d]*\s?[.]?\s?([^<] )<\/h([\d])>
有用
<h2 style="margin-top:1em;">What is Python?</h2>
這是行不通的
<h2 style="margin-top:1em;">Python Jobs<span class="blink">New!</span></h2>
如何將此Python Jobs<span >New!</span>作為第二組?需要 3 個捕獲組 - 2h2,Python Jobs<span >New!</span>作為第二組和2關閉 h2。
uj5u.com熱心網友回復:
([^<] )表示匹配除 <before之外的任何內容的序列</h2>。由于嵌套標簽包含<字符,因此不會匹配它們。
用于. ?匹配標簽的內容。?使它不貪婪,所以當它到達第一個時它會停止</h#>。
您還可以</h#>在匹配部分使用反向參考,因此結束標簽被迫匹配開始標簽。
<h(\d).*?>\s*\d*\s?\.?\s?(. ?)<\/h(\1)>
順便說一句,沒有必要放在\d里面[]。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/451876.html
標籤:正则表达式
上一篇:匹配n次出現的相同元素
下一篇:正則運算式捕獲可變數量的專案?
