[英]DomXPath Selecting
我在選擇所需的DomXPath時遇到問題。 我有一個像
<div id="a">
Something
<nobr> Inside </nobr>
</div>
我想要的是僅選擇“某物”而不是“內部”。 我知道如何像//div[@id='a']
一樣同時選擇'Inside'或它們兩者,然后調用$obj->nodeValue
,但是我找不到唯一選擇'東西。 有人可以幫我嗎? 謝謝。
編輯:如果將Something更改為Something 123456,您還可以提示我如何僅選擇數字值作為123456作為獎勵嗎?
在xpath的文本節點內定位數字非常繁瑣。 相反,您可以在PHP中使用正則表達式來解析textnode的文本以獲得值:
$doc = new DomDocument;
$doc->loadXML($xml);
$xpath = new DOMXPath($doc);
$text = $xpath->query("/div[@id='a']/child::text()")->item(0)->nodeValue;
$r = preg_match('~\d+~', $text, $matches);
list($number) = $matches;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.