一、判断中文和编码有关 gbk是双字节,utf8是三字节,可以根据中文的范围来判断
编码范围
1. GBK (GB2312/GB18030)
x00-xff GBK双字节编码范围
x20-x7f ASCII
xa1-xff 中文
x80-xff 中文
2. UTF-8 (Unicode)
u4e00-u9fa5 (中文)
x3130-x318F (韩文
xAC00-xD7A3 (韩文)
u0800-u4e00 (日文)
ps: 韩文是大于[u9fa5]的字符
二、JS判断中文
var str = "php编程"; if (/^[u4e00-u9fa5]+$/.test(str)) { alert("该字符串全部是中文"); } else { alert("该字符串不全部是中文"); }
三、PHP中判断中文
$str = "php编程"; if (preg_match("/^[x{4e00}-x{9fa5}]+$/u",$str)) { print("该字符串全部是中文"); } else { print("该字符串不全部是中文"); }
注意:
在php中,是用x表示十六进制数据
u (PCRE_UTF8)
此修正符启用了一个 PCRE 中与 Perl 不兼容的额外功能。模式字符串被当成 UTF-8。