1. 程式人生 > >JS判斷是否為中文的方法

JS判斷是否為中文的方法

第一種程式碼:

EXFCODE:

function isChinese(temp)
{
    var re=/[^/u4e00-/u9fa5]/;
    if (re.test(temp)) return false ;
    return true ;
}

第二種程式碼:

EXFCODE:

function isChn(str)
{
  var reg=/^[/u4E00-/u9FA5]+$/;
  if (!reg.test(str)){
  alert( "不全是中文" );
  return false ;
} else {
  alert( "全是中文" );
  return true ;
}

第三種程式碼: EXFCODE:

function funcChina()
{
  var obj = document.form1.txtName.value;
  if (/.*[/u4e00-/u9fa5]+.*$/.test(obj))
  {
   alert( "不能含有漢字!" );
   return false ;
  } else {
   return true ;
  }
}

第四種程式碼: EXFCODE:

function isChina(s)
{
  var patrn=/[/u4E00-/u9FA5]|[/uFE30-/uFFA0]/gi;
     if (!patrn.exec(s)){
   return false ;
     } else {
   return true ;
     }
}

第五種程式碼: EXFCODE:

var str= '玄峰軟體www.exfsoft.com' ;
if (escape(str).indexOf( "%u" )<0)
{
  alert( "沒有包含中文" );
} else {
  alert( "包含中文" );
}

原理:escape對字串進行編碼時,字元值大於255的以"%u****"格式儲存,而字元值大於255的恰好是非英文字元(一般是中文字元,非中文字元也可以當作中文字元考慮);indexOf用以判斷在字串中是否存在某子字串,找不到返回"-1"。