preg_match('/^(http:\\/\/)?(.+)\.MYDOMAIN\.com(.*)/', $url, $match)
这是我的正则表达式,用于验证必须具有子域的URL,但如果有人使用www
而不是子域,它也得到验证。例如:
http://shoes.en.MYDOMAIN.com/
这必须通过
http://www.MYDOMAIN.com/
这必须失败
如果子域为www
?
答案 0 :(得分:2)
我认为你可以使用负面前瞻断言:(?!www\.)
在协议检查后放置,检查启动或协议后是否有www.
。
/^(http:\\\/\/)?(?!www\.)(.+)\.MYDOMAIN\.com(.*)/.test("www.MYDOMAIN.com")
答案 1 :(得分:0)
preg_match('/^(http:\\/\/)?([^(www)]+)\.MYDOMAIN\.com(.*)/', $url, $match);
答案 2 :(得分:0)
如何使用当前解决方案首先验证域,然后使用第二个表达式检查www:
(\.www\.|http:\/\/www\.|^www\.)