正则表达式:排除匹配

时间:2012-03-20 17:37:59

标签: php regex

我有这种模式:

~^([a-z0-9]+[a-z0-9-]+[a-z0-9]+\.([a-z]+)(\.[a-z]+)?)$~i

它将匹配以下内容:

xxx.xxxxxx.xxx.xxx

(每个x的数量无关紧要)

如果第一个xxx.xxx.xxx之前的字符集是.,我该如何禁止wwww

例如,它应该允许example.coexample.co.uk,但不应允许www.example.cowww.example.co.uk

1 个答案:

答案 0 :(得分:2)

你可以使用负向前瞻/后视,例如:

~^((?!www\.)[a-z0-9]+[a-z0-9-]+[a-z0-9]+\.([a-z]+)(\.[a-z]+)?)$~i