任意的字符6到16位是.{6,16}
只有 数字、字母、下划线组成 就是[0-9_a-zA-Z]
总的加在一起就椒 ^[_0-9a-z]{6,16}$
代码如下 | 复制代码 |
<?php function ispassword($str) { if (preg_match('/^[_0-9a-z]{6,16}$/i',$str)){ return true; }else { return false; } } $password = 'abcde@'; if(ispassword($password)) { echo '符合'; }else { echo '不符合'; } //output 不符合
echo '<br>'; |
例2
代码如下 | 复制代码 |
$action = trim($_get['action']); if($action == "sub") { $str = $_post['dir']; //if(!preg_match("/^[".chr(0xa1)."-".chr(0xff)."a-za-z0-9_]+$/",$str)) //gb2312汉字字母数字下划线正则表达式 if(!preg_match("/^[x{4e00}-x{9fa5}a-za-z0-9_]+$/u",$str)) //utf-8汉字字母数字下划线正则表达式 { echo "<font color=red>您输入的[".$str."]含有违法字符</font>"; } else { echo "<font color=green>您输入的[".$str."]完全合法,通过!</font>"; } } ?> <form method="post" action=""> 输入字符(数字,字母,汉字,下划线): <input type="text" name="dir" value=""> <input type="submit" value="提交"> </form> |
时间: 2024-10-02 16:12:03