遇到的问题:PHP判断字符串中是否含有除 字母、数字之外的字符
使用preg_match 判断:
if(!preg_match("/^[A-Za-z0-9]+$/", $my_str)){
//TODO: 含有特殊字符
}
else{
//TODO: 不含特殊字符
}
去除掉字符串中除 字母、数字之外的字符
//其中 i 代表不区分大小写
$my_str
= preg_replace(
'/[^a-z0-9]/i'
,
''
, $my_str
);
判断是否只含中文的(需要区分gbk 和 utf8):
gb2312:if(!preg_match("/^[".chr(0xa1)."-".chr(0xff)."]+$/", $my_str
))
utf-8 :if(!preg_match("/^[\x{4e00}-\x{9fa5}]+$/u", $my_str
))