我希望匹配包含任何有效网址字符序列但不包含特定字词的网址。有问题的网址http://gateway.ovid.com我希望匹配“网关”这个词以外的任何内容:
但
如下所示:
^http://([a-z0-9\-\.]+|(?<!gateway))\.ovid\.com$
但它似乎不起作用。
更新:抱歉忘记提及语言,这是C#.NET
答案 0 :(得分:12)
你的正则表达式几乎是正确的,除了额外的'|'在'+'之后。删除'|'
^http://([a-z0-9\-\.]+(?<!gateway))\.ovid\.com$
答案 1 :(得分:-3)
你没有指定宿主语言,但为什么不像这样的psuedocode
bool good = Regex.Match( yourRegex ) and not Regex.Match(gateway)