Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Regex XPath表示;文本与以下字符串之一“匹配”;?_Regex_Xpath - Fatal编程技术网

Regex XPath表示;文本与以下字符串之一“匹配”;?

Regex XPath表示;文本与以下字符串之一“匹配”;?,regex,xpath,Regex,Xpath,我正在为内容部分随机的页面编写一个自动测试:元素的文本将是一组已知的可能性之一 我想编写一个XPath选择器,它说:“有一个,它的内容是Foo或Bar或Baz” 我该怎么做? 我想我需要一个正则表达式和匹配。我尝试了//h3[匹配(text(),'Foo | Bar | Baz |')],但我使用的库表明这不是有效的查询。(我不知道它使用的是什么版本的XPath。)正则表达式和matches()函数需要XPath 2.0 如果您的库只支持XPath 1.0,请使用此XPath //h3[.='F

我正在为内容部分随机的页面编写一个自动测试:元素的文本将是一组已知的可能性之一

我想编写一个XPath选择器,它说:“有一个
,它的内容是
Foo
Bar
Baz

我该怎么做?


我想我需要一个正则表达式和
匹配。我尝试了
//h3[匹配(text(),'Foo | Bar | Baz |')]
,但我使用的库表明这不是有效的查询。(我不知道它使用的是什么版本的XPath。)

正则表达式和
matches()
函数需要XPath 2.0

如果您的库只支持XPath 1.0,请使用此XPath

//h3[.='Foo' or .='Bar' or .='Baz']

选择字符串值为
Foo
Bar
Baz
之一的所有
h3
元素,而无需使用正则表达式。

正则表达式和
匹配()
函数需要XPath 2.0

如果您的库只支持XPath 1.0,请使用此XPath

//h3[.='Foo' or .='Bar' or .='Baz']

选择字符串值为
Foo
Bar
Baz
之一的所有
h3
元素,而无需使用正则表达式。

使用XPath 2.0及更高版本,也可以使用
/h3[.=('Foo','Bar','Baz')]
如果您只是想将
h3
元素的字符串内容与序列中的这三个值进行比较。

使用XPath 2.0及更高版本,您也可以使用
/h3[.=('Foo','Bar','Baz')]
如果您只是想将
h3
元素的字符串内容与序列中的这三个值进行比较。

您应该将其写成
//h3[text()='Foo'或text()='Bar'或text()='Baz']
您应该将其写成
//h3[text()='Foo'或text()='Bar'或text()='Baz']