Xpath无法识别正则表达式部分

时间:2017-07-05 09:48:41

标签: c# selenium xpath

我是新手,我正在尝试了解selenium和XPath的用法

string exp = "//*[@id=\"g_1_bHwVovAN\"]/td[2]";
var dateTime = chromeDriver.FindElementsByXPath(exp);

使用此代码,我只能使用1个元素。如何更改此“bHwVovAN”部分,以便我可以访问网站上的所有元素。

string exp = "//*[@id=\"g_1_[^[0-9+]]\"]/td[2]";
var dateTime = chromeDriver.FindElementsByXPath(exp);

我尝试使用正则表达式,但它没有用。它没有识别正则表达式部分。另外,我查看了其他帖子,并试图使用匹配,也没用。我该如何解决?

如果我没有写清楚正确的方式,我也是英语新手。遗憾

1 个答案:

答案 0 :(得分:1)

matches()中的XPath 2.0功能可以解决您的问题,但selenium不支持此XPath版本。

您可以在下方尝试匹配以id开头的"g_1_"属性元素:

string exp = "//*[starts-with(@id,\"g_1_\")]/td[2]";