我有以下内容,并试图看看是否有更好的方法。我知道它可以使用starts-with / contains来完成。我正在测试firefox 10,我认为它实现了xpath 2。+。
测试节点是
<a id="foo">
.
.
.
<a id="foo1">
.
<a id="foo2">
有没有办法使用通配符来获取foo1 / foo2节点..
像
这样的东西//a[@id =* 'foo']
or
//a[contains(@id*,'foo')]
这会说,给我一个“a”,其中id以“foo”开头,但是有额外的字符......然后这将跳过带有“foo”的第一个节点
我以为我在这上面看过一个rticle,却找不到它!
我记得,文章指出xpath有一组运算符可用于指定字符串中给定模式的开始/结束。
感谢
答案 0 :(得分:5)
使用强>:
//a[@id[starts-with(., 'foo') and string-length() > 3]]
答案 1 :(得分:3)