任意的字符6到16位是.{6,16}
只有 数字、字母、下划线组成 就是[0-9_a-zA-Z]
总的加在一起就椒 ^[_0-9a-z]{6,16}$
代码如下 |
复制代码 |
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 ' ';
$password = 'abcdeasdas_1324';
if(ispassword($password)) {
echo '符合';
}else {
echo '不符合';
}
//output 符合
?>
|
例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 "您输入的[".$str."]含有违法字符";
}
else
{
echo "您输入的[".$str."]完全合法,通过!";
}
}
?>
|