我希望將標籤與名稱test
匹配,但前提是它的名稱one
中有兩個以上標籤在importantTag
之內。僅在內部存在特定標籤時才匹配標籤
<test attribute="one">
<unimportantTag>
<one>text</one>
</unimportantTag>
<importantTag>
<one>text</one>
<one>text</one>
</importantTag>
</test>
下面這一個不應該被匹配,因爲它不具有兩個one
標籤importantTag
:
<test attribute="one">
<unimportantTag>
<one>text</one>
</unimportantTag>
<importantTag>
<one>text</one>
</importantTag>
</test>
</root>
我知道,那些那樣的東西不應該被解析使用正則表達式,但在這種情況下沒有其他辦法。
是否有可能使用正則表達式匹配整個測試標籤。這個例子被簡化了。
根據來自正則表達式的匹配,我想將attribute="one"
替換爲屬性"replaced"
。
使用HTML/XML解析器請。請從標籤列表中刪除其中的一個。 – nhahtdh 2014-10-11 15:29:51
http://regex101.com/r/vF9sG0/2 – 2014-10-11 15:41:49
@Avinash Raj - 非常感謝,我已經調整了你的模式,所以它可以在完整的文件上工作,而不是簡單的。剛剛還有一個問題。基於這個決定(即找到這個匹配),我想用屬性「one」的值替換別的可以說「替換」的單詞。既然我看到你在使用非捕獲組,是否有任何簡單的方法來實現它? – wariacik 2014-10-11 16:19:11