2013-05-20 92 views
0

我有一個簡單的正則表達式的小問題。匹配部分字符串與正則表達式

我想要一個正則表達式來匹配這個簡單的字符串(在一個xml文件中),其中wsse:可以是可選的,特別是像這樣的:< wsse:Username>(wsse是可選的)。

你能幫我嗎?

在此先感謝您的幫助!

+0

現在的問題是,爲什麼你想解析XML內容作爲字符串返回內的實際用戶名? – KaraokeStu

+0

此外,請提供一個XML樣本,以及您期望得到的結果 – KaraokeStu

回答

2

這將匹配用戶名:

<(?:wsse:)?([^>]+)> 

編輯: 並允許冒號前的任何字符串:

<(?:[^:]+:)?([^>]+)> 
+0

感謝Jerry的回覆,但前綴wsse:可能是變量(長度和字符串)。你可以幫我嗎? –

+0

這個正則表達式實際上會匹配「:wsse」是否存在。 – KaraokeStu

+0

@ mauro-dev如果你的意思是冒號前的任何內容,試試這個:<(?:[^:] +:)?([^>] +)> – Jerry

0

雖然不是理想的解決方案(如你真的應該使用XML解析器或XSLT解析XML),以下內容將適用於您:

<((wsse:)?Username)>(.*)(</\1>) 

它也將每場比賽返回4組。

3組將從標籤

相關問題