正则表达式问题,/(http:\/\/[\w.\/]+)(?![^<]+>)/gi;中的“?!”是什么意思?

aamiiLA 2011-03-16 09:33:26
/(http:\/\/[\w.\/]+)(?![^<]+>)/gi;

这个是用来将网址直接转换成URL链接的,但是发现?后面的无法匹配,想修改一下。但是发现这里有个!,这是什么意思呢?应该如何修改才好?

...全文
109 点赞 收藏 6
写回复
6 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
(?!) 学名叫做:negative lookahead 否定型顺序环视

参考这个帖子我在 2 楼的回复:

http://topic.csdn.net/u/20090429/17/4ec37040-aba0-48e5-8fec-84b4cdd9e78d.html
回复
jeky_zhang2013 2011-03-17
?!就是后面不能有里面的字符吧,匹配?后面的参数?(.+=.+)+, 这个要多试下
回复
aamiiLA 2011-03-17
这个程序可以取网址加上URL的,但是却没办法取“?”后面的参数。
回复
aamiiLA 2011-03-17
原程序:


window.onload=function(){
var div = document.getElementById("container");
var s=div.innerHTML;
var re = /(http:\/\/[\w.\/]+)(?![^<]+>)/gi;
div.innerHTML=s.replace(re,"<a href='$1' target='_blank'>$1</a>");
回复
aamiiLA 2011-03-17
[Quote=引用 1 楼 lzj0470 的回复:]
<a.*?href=("|\'|)([^\'"#{};\s]+)("|\'|).*?>
这个应该能解决你的问题,试试不行在说。
[/Quote]

一点不行啊。
回复
lzj0470 2011-03-16
<a.*?href=("|\'|)([^\'"#{};\s]+)("|\'|).*?>
这个应该能解决你的问题,试试不行在说。
回复
相关推荐
发帖
Web 开发
创建于2007-09-28

8.0w+

社区成员

Java Web 开发
申请成为版主
帖子事件
创建了帖子
2011-03-16 09:33
社区公告
暂无公告