假设我有以下HTML代码:
<a href="/site/somesite/">
somesite</a>
我的问题是如何编写必须使用text()
属性来匹配somesite
链接的XPath表达式,我无法更改源代码?
答案 0 :(得分:3)
我不确定您是要根据链接文本查找URL,还是根据URL查找链接文本。这将为您提供URL:
//a[normalize-space() = 'somesite']/@href
这将为您提供文字:
normalize-space(//a[@href = '/site/somesite/'])
答案 1 :(得分:2)
使用normalize-space()
,它将丢弃前导和尾随空白字符(并将文本中间的重复空格压缩成一个空格),以便您可以比较规范化的text()
和用于过滤谓词。
a[normalize-space(text())='somesite']