js 正則表示式匹配中文
另錯誤方法:/[^\u00-\uFF]/ (匹配 非單位元組字元、還包括一些全半形符號如,.(){}'"!等、還有vwxyz字元)
說明: //u0000-u00ff.包含unicode單位元組編碼( 0-255編碼)包含基本控制字元和拉丁文字母。 採用該否定表示式,粗略判斷是否含有中文。
具體的匹配中文及字元方法:/[\u4E00-\u9FA5\uF900-\uFA2D]/
說明: u4e00-u9fbf : unicode CJK(中日韓)統一表意字元。u9fa5後至u9fbf為空
uF900-uFAFF : 為unicode CJK 相容象形文字 。uFA2D後至uFAFF為空
具體可參考unicode編碼表:http://www.nengcha.com/code/unicode/class/
//是否含有中文(也包含日文和韓文)
function isChineseChar(str){
var reg = /[\u4E00-\u9FA5\uF900-\uFA2D]/;
return reg.test(str);
}
//同理,是否含有全形符號的函式
function isFullwidthChar(str){
var reg = /[\uFF00-\uFFEF]/;
return reg.test(str);
}