XPath strict contains()函数
我使用xpath的contains函数查找包含一些文本的元素,如下所示:XPath strict contains()函数,xpath,Xpath,我使用xpath的contains函数查找包含一些文本的元素,如下所示: //td[contains(text(),'foo')] 但是,例如,如果页面包含两个td元素,分别包含foo和foobar,上述xpath将返回这两个元素。 是否存在任何类型的strictcontains,它只返回带有文本foo的元素,而不返回带有foo bar的元素?所说的“strict contains”实际上指的是简单的相等性测试吗?如果是这样的话,您应该能够通过使用“严格包含”来实现这一点,您实际上是指简单的平
//td[contains(text(),'foo')]
但是,例如,如果页面包含两个td
元素,分别包含foo
和foobar
,上述xpath将返回这两个元素。
是否存在任何类型的strictcontains
,它只返回带有文本foo
的元素,而不返回带有foo bar
的元素?所说的“strict contains”实际上指的是简单的相等性测试吗?如果是这样的话,您应该能够通过使用“严格包含”来实现这一点,您实际上是指简单的平等测试吗?如果是这样的话,您应该可以使用//td[text()=“foo']
这样做:-
//td[normalize-space() = 'foo']
试着这样做:-
//td[normalize-space() = 'foo']
你的意思是td有foo和foo-bar,或者它有一些文本是foo和其他类似的东西…你的意思是td有foo和foo-bar,或者它有一些文本是foo和其他类似的东西…我甚至会删除
文本()
,然后简单地做//td[.='foo']
。我甚至会删除文本()
,然后简单地做//td>[.='foo']
。