除了单词“www”之外的所有alpha newric的模式

时间:2018-05-08 12:24:22

标签: php regex

我正在使用匹配所有字母数字字符的[0-9_A-Za-z]

'http://<slug:[0-9_A-Za-z]+>.domain.com/' => 'user/view'

我需要一个正则表达式来匹配它,但除了单词www

2 个答案:

答案 0 :(得分:2)

您可以添加否定前瞻来限制单词字符类:

'http://<slug:(?!\w*www)\w+>.domain.com/' => 'user/view'

请注意[0-9_A-Za-z]匹配与\w相同的字符,因此我们可能会略微缩短模式。

要解决此问题,(?!\w*www)否定前瞻将使所有匹配失败,其中www出现在任何0 +字词之后(\w*)。

答案 1 :(得分:0)

只需添加第二张支票,例如:

if (preg_match($pattern, $string) && 'www' !== $string) {