2010-08-26 32 views
9

如何创建一个像正则表达式那样工作的XPath表达式,以便它匹配next的实例?这里就是我想用正则表达式语法的例子:如何选择与XPath具有通配符/部分匹配的内容

string = 'blah_blah next ' 

xpath="//a[contains(text(),'.*?next.*')]"); 

我是新来的XPath,并通过教程搜索并没有帮助我。

回答

14

在XPath 1.0,这表达你想要做什么:

//a[contains(.,'next')] 

http://www.w3.org/TR/xpath/#section-String-Functions

功能:布尔包含(字符串, 字符串)

的包含函数返回如果属实 第一个参数字符串包含 第二个参数字符串,否则为 返回false。

对于更复杂的匹配尤斯正则表达式,你需要有这个内置功能的XPath 2.0处理器:match()replace()tokenize()

+0

感谢..我发现,提到通配符的教程,但它说的话使用“*”,这让我非常困惑,因为我在其他地方看到这是用于其他的东西..感谢指针 – Rick 2010-08-26 23:06:48

+0

@瑞克:你很好。 – 2010-08-26 23:56:18