php正则中文多种验证方法
php正则中文多种验证方法,gb2312汉字字母数字下划线正则表达式:
preg_match("/^[".chr(0xa1)."-".chr(0xff)."a-za-z0-9_]+$/",$str);
再看一判断实例,代码如下:
- $str = "中国";
- //if (preg_match("/^[".chr(0xa1)."-".chr(0xff)."]+$/", $str)) { //只能在gb2312情况下使用
- if (preg_match("/^[x7f-xff]+$/", $str)) { //兼容gb2312,utf-8
- echo "正确输入";
- } else {
- echo "错误输入";
- }
编码表
双字节字符编码范围:
1. gbk (gb2312/gb18030)
x00-xff gbk双字节编码范围
x20-x7f ascii
xa1-xff 中文 gb2312
x80-xff 中文 gbk
2. utf-8 (unicode)
u4e00-u9fa5 (中文)
x3130-x318f (韩文)
xac00-xd7a3 (韩文)
u0800-u4e00 (日文)
php正则表达式匹配中文的:preg_match('/^[xa1-xff0-9a-za-z]+$/',$val)
更详细代码如下:
- $val=$_get[name];
- if (preg_match("/^[".chr(0xa1)."-".chr(0xff)."]+$/", $val))
- {
- //要执行的表达式
- }
- else
- {
- //要执行的表达式
- }
php中来判断字符串是否为中文,代码如下:
- if (preg_match("/^[u4e00-u9fa5]+$/",$str)) {
- print("该字符串全部是中文");
- } else {
- print("该字符串不全部是中文");
- }