用户名正则表达式、含中文、长度为4

求一正则表达式 由于判定用户注册时的用户名,要求既支持中文,又支持英文字符,不能以数字开头。限制为4-16个字符。

答:

[a-zA-Z\xa0-\xff_]小写大写英文,可能中文,可能下划线开头
[0-9a-zA-Z\xa0-\xff_]后头的内容可以是小写大写中文数字下划线
[0-9a-zA-Z\xa0-\xff_]{3,15}后头的内容反复3-15次

所以整个正则表达式为[a-zA-Z\xa0-\xff_][0-9a-zA-Z\xa0-\xff_]{3,15}
也可以加上开头末了锚记^[a-zA-Z\xa0-\xff_][0-9a-zA-Z\xa0-\xff_]{3,15}$

<?php function isusername($str) { if (preg_match('/^[a-zA-Z\xa0-\xff_][0-9a-zA-Z\xa0-\xff_]{3,15}$/',$str)){ return true; }else { return false; } } $username = 'abcde123'; if(isusername($username)) { echo '切合'; }else { echo '不切合'; } //output 切合 echo '<br>'; $username = '1abcdeasdas_1324'; if(isusername($username)) { echo '切合'; }else { echo '不切合'; } //output 不切合 ?>

end

附件下载/演示源码:
【 username.htm 】 7.07KB

上一篇: php验证时间名目,只有年代日   |   下一篇:javascript 中的的RegExp()工具» 标签:

分享到: 更多

相关日志:

【转】小谈php正则提取图片地点

匹配无反复的5到10位数字

RegexBuddy 3 正则的翻译

php正则子组(子模式)

一个正则表达式 匹配以“abc”开头后头不能包括“x”、“y”、“z”字符

求正则表达式。匹配小数无关紧要,最多两位小数,必需大于零

正则表达式是如何事情的

正则的一些简写方法

正则高级能力之三目运算

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/7889.html