Zend2主机名路由器约束

时间:2015-01-22 13:16:19

标签: php regex routing zend-framework2

我有一个典型的主机名路由器如下:

$route = Hostname::factory(array(
    'route' => ':subdomain.domain.tld',
    'constraints' => array(
        'subdomain' => '??regex??',
    )
));

问题是我想匹配除'www'之外的所有子域。换句话说,这个路由器应该处理所有子域但是www.domain.tld。我尝试了不同的正则表达式解决方案但未成功什么是正确的正则表达式来实现这一目标?

我使用的一些正则表达式解决方案:

  • '/ [^ WWW] /'
  • '^。*(?<!^ www)\ $'
  • '^(?!(WWW)$)'

1 个答案:

答案 0 :(得分:1)

您可以尝试下面的正则表达式。

'^(?!www).*'

一开始就不允许www