回答
如果你不使用嵌套的標籤,你可以使用如下因素(只需要獲得第一組):
<.*?>([^<]*)<.*?>
但如果你真的在你的XML使用嵌套的標籤,你不能得到值只有正則表達式,它需要一個堆棧或某種列表來做到這一點。
認真嗎?沒有嵌套標籤的XML文檔? – toniedzwiedz
任何事情都是可能的,因爲我們不知道他的XML文件的結構以及他想完成什麼。 –
我不會低估答案,因爲它在技術上是正確的。但是,它的有用性幾乎沒有和IMO一樣,它沒有指向任何接近正確方向的地方。 – toniedzwiedz
正如評論中提到的,你不應該使用正則表達式來解析XML,因爲.NET有更好的庫來做這件事。下面是使用XDocument
類型從LINQ到XML的例子:
// Reference assemblies for LINQ to XML
#r "System.Xml.dll"
#r "System.Xml.Linq.dll"
open System.Xml.Linq
// Create document with your XML data
let doc = XDocument.Parse("<string> xxx </string>")
let el name = XName.Get(name)
// Get element named 'string' and pick its value
doc.Element(el "string").Value
謝謝。如果我希望它取得價值,不管標籤名稱是什麼?有沒有選擇? – cookya
@cookya如果它是一個根元素,那麼你可以寫'doc.Root.Value'。否則,你需要使用'Elements()'返回的第一個元素,並寫入類似'(doc.Elements()|> Seq.head).Value'。 –
#r "System.Xml.Linq.dll"
open System
open System.Linq
open System.Xml.Linq
let toXName s = XName.Get s
let xml = XDocument.Load @"data.xml"
let getElements elName = xml.Root.Descendants(toXName elName)
let main() =
(getElements "string").First().Value
|> printfn "%s"
// getElements "string" |> Seq.iter (fun x -> printfn "%s" x.Value)
do main()
- 1. 在PHP中沒有外標籤的某個標籤中提取Html內容
- 2. 如何在XML文件的另一個標籤中選擇一個標籤中的內容?
- 3. 提取XML標籤內容::的libxml
- 4. php獲取xml內部標籤內容
- 5. XSLT從XML文件中獲取內容..?
- 6. 從XML文件中提取內容
- 7. 獲取從元素的HTML標籤沒有內部文本內容
- 8. 如何獲取python中兩個xml標籤之間的內容?
- 9. python從沒有html標籤的文本文件中提取URL
- 10. 如何從PowerShell的xml文件中獲取一些內容?
- 11. 在沒有XML文件標籤的Java中打印XML
- 12. PHP DOMDocument,檢索一個div的內容,沒有div標籤
- 13. 找到一個單一標籤內的同一內標籤內容的n個
- 14. XML解析讀取XML標籤作爲文本內容
- 15. 獲取html標籤內/ html標籤之間的所有內容
- 16. 如何從.NET中的標籤中提取文本內容?
- 17. 獲取標籤和值從XML文件
- 18. 我的C#程序沒有從網站獲取最新的XML文件內容
- 19. 解析xml內容標籤
- 20. 逃逸XML標籤內容
- 21. 如何從JSON從文件內容獲取標籤數據
- 22. DOM文檔 - 如何獲取標籤內的文本沒有內標籤
- 23. 顯示一個沒有標籤的xml文檔?
- 24. 需要從XML文件填充多個標籤,有沒有更快的方法?
- 25. 如何提取標籤的每一次出現在一個XML文件
- 26. 如何從一個XML文件,並具有XSLT html標籤
- 27. 提取從兩個文件中的R相同內容的行
- 28. C# - 從一個特定的標籤獲取XML文檔
- 29. Android的 - 從標籤內容
- 30. XSLT:XML-XML(在轉換文件中沒有XML標籤)
不要使用正則表達式,使用XPath去代替。 – toniedzwiedz
爲什麼總是正則表達式? http://stackoverflow.com/questions/8577060/why-is-it-such-a-bad-idea-to-parse-xml-with-regex – pad
好的,我不會使用正則表達式:) 我只是檢查選項.. – cookya