我有这个正则表达式,可以检测网址格式的文本:
/(http|ftp)+(s)?:(\/\/)((\w|\.)+)(\/)?(\S+)?/
因此会检测到类似http://google.com
我的问题是,当链接位于<a href="http://google.com">http://www.google.com</a>
等标记内时,我不希望它检测链接 - 所以在那里它应该不检测到任何内容。帮助
编辑 - 我不想匹配锚标记。上面的正则表达式匹配锚标签内的链接,这是我做不想要的。我需要它来匹配标签之外的链接。
答案 0 :(得分:0)
这个应该有效
/(?!href.*?=.*?['"]+)(http|ftp)+(s)?:(\/\/)((\w|\.)+)(\/)?(\S+)?/
答案 1 :(得分:0)
/(?<!href=['"])(http|ftp)+(s)?:(\/\/)((\w|\.)+)(\/)?(\S+)?/