首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在浏览器控制台中使用EXSLT中的regexp命名空间会导致SyntaxError

在浏览器控制台中使用EXSLT中的regexp命名空间会导致SyntaxError
EN

Stack Overflow用户
提问于 2019-10-15 22:29:41
回答 1查看 22关注 0票数 0

在浏览器控制台中搜索元素时,我希望在XPath表达式中使用regexp名称空间,但SyntaxError: The expression is not a legal expression.尝试这样做。

我将http://help.dottoro.com/ljspsvcs.php作为创建名称空间解析器的教程。

下面是我的代码:

代码语言:javascript
复制
function nsResolver (nsPrefix) {
    if (nsPrefix == "regexp") {
        return "http://exslt.org/regular-expressions";
    }
    return null;
}
document.evaluate('//a[regexp:test(@href, "qwerty-[\d]+$")]', document.documentElement, nsResolver, XPathResult.ANY_TYPE, null);

我在这里做错了什么?

EN

回答 1

Stack Overflow用户

发布于 2019-10-16 15:40:02

有人在特定的名称空间中定义了一组扩展函数,这并不意味着每个XSLT处理器都支持这些函数。这里的问题是,您使用的是一个多年未升级的旧XSLT处理器(因为浏览器供应商对XML用户社区失去了兴趣)。

考虑安装Saxon-JS,它提供在浏览器中运行的XSLT3.0,并根据W3C规范提供内置的正则表达式支持。(免责声明:这是我公司的产品)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58397010

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档