收藏了正则表达式。可以验证只能输入数字、汉字、英语。分开验证了也可以整合一起验证。但是我是拆分开好了。比较好使。可以单独的验证。经过本人测试可以使用的哦!下面就是php 验证只能输入汉字、英语、数字的代码了
if(preg_match('/^[0-9]+$/',$str)){
echo '值能输入数字';
}
if(preg_match('/^[a-zA-Z]+$/',$str)){
echo '只能输入英文';
}
验证中文
utf-8下
preg_match("/^[a-z0-9_x80-xff]+[^_]$/g",$a);
if(preg_match("/^[x7f-xff]+$/",$str)){
echo '只能输入中文';
}
gbk下:
preg_match("/^[a-z0-9_".chr(0xa1)."-".chr(0xff)."]+[^_]$/",$a)
?>
例子
function checkStr($str){
$output='';
$a=ereg('['.chr(0xa1).'-'.chr(0xff).']', $str);
$b=ereg('[0-9]', $str);
$c=ereg('[a-zA-Z]', $str);
if($a && $b && $c){ $output='汉字数字英文的混合字符串';}
elseif($a && $b && !$c){ $output='汉字数字的混合字符串';}
elseif($a && !$b && $c){ $output='汉字英文的混合字符串';}
elseif(!$a && $b && $c){ $output='数字英文的混合字符串';}
elseif($a && !$b && !$c){ $output='纯汉字';}
elseif(!$a && $b && !$c){ $output='纯数字';}
elseif(!$a && !$b && $c){ $output='纯英文';}
return $output;
}
例子
PHP正则匹配数字,中英文,中横线,下划线,utf-8中文
function check_string($nickname) {
$nickname = trim($nickname);
$pattern = "#([0-9a-zA-Z-_x{4e00}-x{9fa5}]+)#iu";
if (empty($nickname) || !preg_match($pattern, $nickname)) {
return FALSE;
}
if (strlen($nickname) < 4 || strlen($nickname) > 30) {
return FALSE;
}
return TRUE;
}