2014-01-10 47 views
0

我想知道匹配這些類型的序列正則表達式在一個XML文件中的完整元件匹配

<person name="the name I want" ....[other things]> 
    .... [other tags] 
</person> 

我試圖像這樣的正則表達式:

<person +name="the name I want" +.* 

但我我不能進一步,我只能匹配的第一行,但不是完整的元素

你想幫我嗎?

+2

與正確的xml解析器相比,爲什麼使用regexp? –

+0

你試過了嗎?:),因爲Fredrik說解析器可能是更好的選擇。 –

+0

正則表達式,至少與記事本++,不起作用。我沒有嘗試使用適當的xml解析器。你推薦什麼XML解析器? – Manuelarte

回答

-1

我發現這在另一個計算器線程:

<person(.|\r\n)*?<\/person> 

我希望它是有用的

編輯:

我忘了添加的name屬性

(<person name="the name I want"(.|\r\n)*?<\/person>) 
+1

這將匹配*每個*人的標籤 – Bohemian

0

試試這個:

<person[*>]*name="the name I want"[^>]*>(.|[\r\n])*?<\/person> 

如果您的語言支持「dotall」標誌,則可以使用該標誌並將(.|[\r\n])*更改爲.*