2017-06-28 36 views
0

我收到了类似于下面一行的xpath。因为没有其他例子可以使用这个xpath,所以我询问是否有人使用正确的语法,因为当前的版本在硒中不起作用,当使用storeElementPresent时不断产生'错误'结果。我怀疑第二个翻译部分可能有错。什么是包含属性的正确语法翻译

//a[contains(translate(@title, 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz'), "(translate('String', 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz')")] 
+0

“因为没有其他这样的xpath可用的示例我在问是否” - 我希望这并不意味着当您需要编写XPath表达式时您打算寻求帮助,而且您不能找到一个已经写好的文件,完全符合你的需求。 –

回答

1

的XPath函数contains(一个,b)返回true当且仅当b被包含在一个

一个

translate(@title, 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz') 

这是@title属性的小写值。

b

"(translate('String', 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz')" 

这是一个包含字符(tran ... –不是你想要什么很可能一个字符串。

相反,b应该是为了测试是否的@title属性值,转换为小写类似"asdf",包含"asdf"串。

0

以前的答案帮助找到的

//a[contains(translate(@title, "ABC", "abc"), translate("string","ABC","abc"))] 

显然,翻译被卡住科茨和括号之间时,它应该没有形式的解决方案。

+0

然后,你意识到'translate(“string”,“ABC”,“abc”)'只计算'string'',对吧? – kjhughes

+0

嗯,我写的似乎工作,因为它会产生真实的方式,但我修改字符串。我不确定你的意思是什么,这整个xpath是用来评估所谓的特定字符串。感谢您的警告,但这可能会提示我的茶友如果有问题。 –

相关问题