3
我想知道一個很好的preg_match模式在php中提取標籤之間的數據。php preg_match解析標籤的模式
例如:
<page>
<username>someone</username>
<id>3020778</id>
<text xml:space="preserve"> The quick brown fox. </text>
</page>
這會給我的字符串 「敏捷的棕色狐狸」。
我一直在使用
preg_match('/<text(.*)?>(.*)?<\/text>/', $content, $match);
嘗試,但它似乎在其他一些情況下無法正常工作。
有沒有人有更好的解決方案或模式?
並使用simpleXML使它比preg_match更快?
通常來說,解析XML文檔幾乎總是比使用正則表達式更可靠。 – jerluc
'$ page = simplexml_load_string($ xml); echo $ page-> username,$ page-> id,$ page-> text;'另請參閱[一個簡單的程序來CRUD節點的XML文件值](http://stackoverflow.com/questions/4906073/a-簡單程序到crud-node-and-node-values-of-xml-file),[用於PHP的最佳XML解析器](http://stackoverflow.com/questions/188414/best-xml-parser-for -php/3616044#3616044)和[最佳方法解析HTML](http://stackoverflow.com/questions/3577641/best-methods-to-parse-html/3577662#3577662) – Gordon
這一個很好地總結: http://stackoverflow.com/questions/1732348/regex-match-open-tags-except-xhtml-self-contained-tags – tdammers