一、判斷中文和編碼有關 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。