【发布时间】:2014-11-27 12:40:56
【问题描述】:
我希望我的 preg_match 语法
- 接受字母和数字(不允许单独使用数字)
- 不允许使用空格
- 不允许使用特殊字符(例如 !@#$%^&.,)
- 最少 3 个字符到 12 个字符。
- 允许使用中文字符(可以单独使用,也可以使用字母或数字,或两者兼有。)
这是我尝试的代码,但我似乎没有达到目标
if(preg_match('/^[a-zA-Z0-9\x{4e00}-\x{9fa5}]{3,12}+$/', $nickname)) {
//accepted
}
else {
//denied
}
提前致谢。
【问题讨论】:
-
我会使用
u修饰符和 an unicode character class\p{Han}。现在的问题是,你接受什么样的信件?é有效吗?