0

我正在尝试在不匹配电子邮件地址的情况下提取网站。

换句话说,如果我的联系部分有

电子邮件:a@gmail.com ---- 网站:www.company.com

我想要不匹配 gmail.com的 www.company.com 。

到目前为止,我已经尝试了所有我能想到的,到目前为止我所拥有的最好的是

\b(?:.(?<!@))+\.\S+\b

但这仍然会匹配 a@gmail.com 中的 gmail.com。

我承认我的正则表达式技能不是最强的,我已经完成了关于负前瞻/落后等的研究,但我仍然不知道如何做到这一点。

4

1 回答 1

0

这是 JGSoft 对域名的表述:

\b(?<!@)((?=[a-z0-9-]{1,63}\.)(xn--)?[a-z0-9]+(-[a-z0-9]+)*\.)+[a-z]{2,63}\b

它是国际化和严格的。

我添加(?<!@)以阻止它在电子邮件名称之后匹配域名。

See a demo here

于 2014-05-23T02:50:53.783 回答