我正在尝试构建一个包含在xml文档中的网址列表,我在其中匹配<id>http://xxx.xxxx.com</id>
内部的所有内容,并且我遇到了问题。
我试图匹配这种模式:/(?<id>)http://(.*?).com(?=</id>)/g
它适用于regexr.com,但我似乎无法使用我的jsfunction:
var regEx = new RegExp('/(?<id>)http://(.*?).com(?=</id>)/g');
我收到错误:
SyntaxError:无效的正则表达式://(?<id>)http://(.*?).com(?=</id>)/g/:无效的群组
答案 0 :(得分:3)
试试这个正则表达式:
(?!<id>)http:\/\/(.*?)\.com(?=<\/id>)
而不是:
(?<id>)http://(.*?).com(?=</id>)
在此处查看演示:http://regex101.com/r/xH8mH7
答案 1 :(得分:1)
尝试DOMParser;
// Code tested under Firefox 27
var doc = new DOMParser()
.parseFromString('<id>http://xxx.xxxx.com</id>', "application/xml");
var ids = doc.querySelectorAll('id'); // Return: NodeList[id]
然而,它在IE中并不起作用&lt; = 8(Browser compatibility)