正如标题所说,是否有可能在XPath中选择仅以某个字符串开头的元素,但也许不会以相同的结尾?
例如,有3个锚元素:
<a href="buy.php/onething"></a><a href="buy.php/twothing"></a><a href="sell.php/anotherthing"></a>
我只想获得以'buy.php /'开头的锚元素。我不认为以下内容会起作用,是吗:
getByXPath("//a[@href='buy.php/']")
我该怎么做?
答案 0 :(得分:147)
//a[starts-with(@href, 'buy.php/')]
http://www.zvon.org/xxl/XSLTreference/Output/function_starts-with.html
答案 1 :(得分:3)
不确定这是否是正确的语法,但您可能希望使用fn:contains xpath函数。您可以在此处找到其他有用的功能:
http://www.w3schools.com/xpath/xpath_functions.asp#string
getByXPath(“// a [fn:contains(@ href / text(),'buy.php /')]”)