1

xpathを使用して括弧内の情報を直接スクレイプすることは可能ですか?または、後で正規表現でフィルタリングする必要がありますか?HTMLは次のようになります。

<span itemprop="title" class="active">Product name (UN1QU3 C0D3)</span>

次のXpath式を使用すると、この中のすべてを取得できます<span>

$xpath->query('//*[@id="crumbtrail"]/div[5]/span');

UN1QU3 C0D3クエリを調整して直接取得することはできますか?または、後でこれに正規表現を使用する必要がありますか?

4

2 に答える 2

3

とを使用substring-afterして、前後のsubstring-beforeすべてを抽出できます。()

substring-before(substring-after(//*[@id="crumbtrail"]/div[5]/span/text(), "("), ")")
于 2012-08-29T18:17:42.417 に答える
1
$xpath->query('//*[@id="crumbtrail"]/div[5]/span');

このクエリを使用すると、スパンタグを取得できます

$xpath->query('//*[@id="crumbtrail"]/div[5]/span/text()');

このクエリは、スパンからテキストを取得するために使用されます

正規表現またはいくつかの文字列操作を使用する必要があるため、Xpathを使用して括弧データをフィルタリングする方法はありません

于 2012-08-29T18:14:33.033 に答える