【发布时间】:2014-04-18 17:45:52
【问题描述】:
我正在尝试构建一个包含在 xml 文档中的 url 列表,我在其中匹配 <id>http://xxx.xxxx.com</id> 中的所有内容,但我遇到了麻烦。
我正在尝试匹配此模式:/(?<id>)http://(.*?).com(?=</id>)/g
它适用于regexr.com,但我似乎无法让它与我的 jsfunction 一起使用:
var regEx = new RegExp('/(?<id>)http://(.*?).com(?=</id>)/g');
我收到一个错误:
SyntaxError: 无效的正则表达式://(?
)http://(.*?).com(?= )/g/: 无效组
【问题讨论】:
-
你想
(?...)是什么意思? -
我正在寻找匹配
和 标签中的内容,在这种情况下是一个 url。它总是以 http:// 开头并以 .com 结尾,所以这个模式会匹配,但它在 JS 中对我不起作用,因为我收到了我显示的错误。 -
我明白这一点。但是
(?...)是无效的,所以我想知道你为什么使用这个字符序列((后跟?)。 -
@FelixKling:你打算写
(?:<id>)吗?
标签: javascript xml regex lookahead negative-lookahead