在以下正则表达式中,?!是什么意思?
?!
new RegExp('http:\/\/(?!' + location.hostname + ')')
这是一个负向先行断言,这意味着为了匹配表达式,(?!...) 内的部分必须不匹配。在本例中,正则表达式仅在http://后面不跟当前主机名(大致如此,请参见Thilo的评论)时匹配。
(?!...)
http://
这是一个负向先行断言,可以在 这里 查看更多信息。
这是一个环顾四周的过程。
location.hostname 不应跟随 http:\/\/
location.hostname
http:\/\/