2

以下のようなタグを含むHTMLがあります。

<div id="SNT">text1</div>
<div id="SNT">text2</div>
<div id="SNT"><span style='color: #EFFFFF'>text3</span></div>
<div id="SNT"><span style='color: #EFFFFF'>text4</span></div>

XPathを使用してすべてのタグに含まれるすべての取得するにはどうすればよいですか?text<div>

すなわち:

text1  
text2  
text3  
text4   
4

1 に答える 1

1

使用

//div[@id='SNT']//text()

divこれにより、XMLドキュメント内の任意の要素の子孫でありid、文字列値が文字列である属性を持つテキストノードが選択されます"SNT"

この選択から空白のみのテキストノードを除外する場合は、次を使用します。

//div[@id='SNT']//text()[normalize-space()]

これは最初のXPath式に似ていますが、選択された各テキストノードには、追加の述語が満たされている必要があります。つまり、normalize-space()文字列の内容に対する関数の値は空でない文字列です。

関数の値は、normalize-space()引数が空の文字列自体である場合、または空白のみの文字(スペース、NL、CR、およびタブ)で構成される文字列である場合にのみ空の文字列になります。

于 2012-06-04T13:15:59.410 に答える