2007年5月28日星期一

javascript 字符统计 中文 英文

统计textarea中的中文数量,英语单词数量,和总字符数字.

代码如下:
<TEXTAREA ID="iInput" ROWS="10" COLS="50" onkeyup="statistic()" onchange="statistic()">

</TEXTAREA>


<br>

Statistic:

<INPUT ID="out" TYPE="text" size="50">


<SCRIPT>

function statistic(){

var words = iInput.value;

var r ;

r = charStatistic(words);

out.value="Chinese:"+r["chinese"]+' _ Words:'+r["word"]+' _ NUMs:'+r["charNum"];

}

function charStatistic(words) {

var chinese = 0;

var total = 0;

var word = 0;

var st = false;

for (i=0; i<words.length; i++) {

var c = words.charAt(i);

if(st==false) {

if(isChinese(c)) {chinese++;}

if(isChar(c)) st=true;

}else {



if(isChinese(c)) {chinese++; word++; st=false;}

else if(!isChar(c)&&c!='-') {word++; st=false;}

}

total++;

}

if(st==true) word++;


var Result = new Array();

Result["chinese"] = chinese;

Result["word"] = word;

Result["charNum"] = total;

return Result;

}


function isChinese(c){

return c.match(/[\u4e00-\u9fa5]/);

}

function isChar(c){

return c.match(/\w/);

}

</SCRIPT>

1 条评论:

匿名 说...

come on!