Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP子域正则表达式_Php_Regex_Subdomain - Fatal编程技术网

PHP子域正则表达式

PHP子域正则表达式,php,regex,subdomain,Php,Regex,Subdomain,我有一个注册表格,用户可以在子域名上注册他们的帐户,即.mysite.com 允许的事情是 abc.mysite.com abc-def.mysite.com abc123.mysite.com abc_def.mysite.com 不允许 http://abc.com.mysite.com http://abc.mysite.com www.abc.mysite.com abc.def.mysite.com abc.com.mysite.com 或者任何不是有效子域的东西如果用户只输入子域

我有一个注册表格,用户可以在子域名上注册他们的帐户,即.mysite.com

允许的事情是

abc.mysite.com
abc-def.mysite.com
abc123.mysite.com
abc_def.mysite.com
不允许

http://abc.com.mysite.com
http://abc.mysite.com
www.abc.mysite.com
abc.def.mysite.com
abc.com.mysite.com

或者任何不是有效子域的东西

如果用户只输入子域前缀,regexp将类似

[A-Za-z-_0-9]+

如果不想让它成为www,那么: (?!www.)[A-Za-z0-9-!+

如果您也不希望它以.com结尾,那么:
(?!www.)[A-Za-z0-9-!]+(?!.com)

那么问题是什么?下划线在域/子域中不是有效字符。1)到目前为止,您尝试了什么?2) 所以你允许子域名中的点,只要其中一个元素不是com或www?