我正在处理这个 html 片段:
<p class="pageSelector">
<a href="/BlaBla">< Prev</a>
<a href="/BlaBla">1</a>
<a href="/BlaBla">2</a>
<a href="/BlaBla">3</a>
4
<a href="/BlaBla">5</a>
<a href="/BlaBla">6</a>
<a href="/BlaBla">Next ></a>
</p>
呈现(或多或少)为
我想选择“4”,因为我需要发现“当前”页面。使用
//p[@class='pageSelector']/text()[normalize-space()]
(使用 Firefox XPath Ckecker 测试)我以为我已经解决了但没有,因为我获得了 7 个匹配项。
谁能告诉我哪里错了? 谢谢
最佳答案
normalize-space 删除空格,但出于此目的,不间断空格字符(尽管它的视觉外观)不被视为空格。所以我会做
text()[translate(., ' 	

 ', '')]
它将返回那些包含除空格或无间断字符以外的字符的子文本节点;然后您可能需要进一步处理以提取您想要的部分内容。
关于java - 使用 Java 的 XPath - 在子标签之间选择文本值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5001704/