由于英文字符和數字字符所占的區位不一樣,在統計中英文混排的字符串中,漢字的字符串長度獲取不準確,本代碼給出求中英文字符串長度的例子。
本例子的具體算法思想是:
(1)首先,去掉字符串首尾的空格,當然,根據需要也可以不用這么做;
(2)其次,通過字符的ASCII碼來判斷字符的類型,如果碼在0-255之間,被視為英文字符,超過255的為為英文字符。
最后,將字符的個數返回。
源代碼如下:
function mm_checklen(strTemp)
{
var i,sum;
sum=0;
strTemp=strTemp.replace(/^(/s)*|(/s)*$/g,""); //去掉首尾的空格
for(i=0;i<strTemp.length;i++)
{
if ((strTemp.charCodeAt(i)>=0) && (strTemp.charCodeAt(i)<=255))
sum=sum+1;
else
sum=sum+2;
}
return sum;
}
新聞熱點
疑難解答