我想从一个字符串中获取一个网站,所以我使用match()
写了一个RegEx模式var websiteOutput = string.match(/[-a-zA-Z0-9@:%_\+.~#?&//=]{2,256}\.[a-z]{2,4}\b(\/[-a-zA-Z0-9@:%_\+.~#?&//=]*)?/gi);
现在的问题是,该字符串还包含电子邮件地址,但我不想与这些相匹配,所以我想到了一个负面的后视和看起来为' @',但我不确定如何实施它。
不匹配,但匹配:
test.test@test.com
test@test.com
希望你能帮助我, 问候TZimon
答案 0 :(得分:0)
您可以尝试更简单的方法,而不是使正则表达式复杂化:
if(!/@/gi.test(string)){
var websiteOutput = string.match(/[-a-zA-Z0-9@:%_\+.~#?&//=]{2,256}\.[a-z]{2,4}\b(\/[-a-zA-Z0-9@:%_\+.~#?&//=]*)?/gi);
}
即只接受其中没有@
的字符串。