目前我有一个正则表达式,可以在html块中找到所有URL。它看起来像这样:
elementHTML.match(/(http|ftp|https):\/\/[\w-]+(\.[\w-]+)+([\w.,@?^=%&:\/~+#-]*[\w@?^=%&\/~+#-])?/ig);
检测到网址后,会将其替换为以下内容:
<div data="URL_THAT_WAS_DETECTED">Information about that url</div>
数据属性是自定义添加的。
如何在不获取以前检测到的网址的情况下继续查找网址?
理想情况下,我想要忽略引号或可能是html标签的URL,但我愿意接受建议。
非常感谢任何帮助,谢谢!
答案 0 :(得分:1)
这个正则表达式会这样做:
/(http|ftp|https):\/\/[\w-]+(\.[\w-]+)+(?![^\s]*?")([\w.,@?^=%&:\/~+#-]*[\w@?^=%&\/~+#-])?/ig
我为双引号"
字符添加了负面预测。