比方說,我有以下XML:如何使用.NET的XML庫允許(或替換)&符號?
<someRootElement>
<someTagWithUrl>http://www.google.com/s.php&test=testing</someTagWithUrl>
</someRootElement>
的someTagWithUrl內的符號是無效的,需要(通過使用&
)進行轉義,但假設我有與整個上述內容單一字符串。
我該如何安全地轉義&符號,使其成爲有效的XML? .NET的XML庫可以忽略這個嗎? (目前XElement.Parse會拋出異常)
我想過使用正則表達式來搜索標籤之間的符號,但我無法完全正確地獲取語法。 (類似>(\ &)\ <作爲正則表達式替換使用&,但我無法弄清楚)。
謝謝!只能找到標籤之間的&符號? (例如,一個相對安全的替代?) – SofaKng 2010-08-24 01:45:01
它應該沒關係。當它們不描述實體時,&符號總是無效的,並且它們不允許在標籤內部,無論是作爲元素名稱,屬性名稱還是屬性值。你可能遇到的唯一問題是如果'CDATA'部分在你的XML中;如果是這樣的話,解決方案將更加複雜。 – Jacob 2010-08-24 02:16:36