【背景】
用户往往需要一定数量的单词填写必填字段限制,但js由value.length取出来的往往差异很大,与实际的话。通常真正的用户抱怨。很显然,我没有写那么多字,但系统提示超过字数限制。然后,我学word规则,用于计算单词数。他写了一些这样的程序。
【参考代码】
//用word方式计算正文字数
function fnGetCpmisWords(str){
sLen = 0;
try{
//先将回车换行符做特殊处理
str = str.replace(/(\r\n+|\s+| +)/g,"龘");
//处理英文字符数字,连续字母、数字、英文符号视为一个单词
str = str.replace(/[\x00-\xff]/g,"m");
//合并字符m,连续字母、数字、英文符号视为一个单词
str = str.replace(/m+/g,"*");
//去掉回车换行符
str = str.replace(/龘+/g,"");
//返回字数
sLen = str.length;
}catch(e){
}
return sLen;
}
说明:
计算的时候用了一个特殊的汉字"龘"拆分,实在想不到更好的,假设有好的方法。我恳求说一下。
版权声明:本文博客原创文章。博客,未经同意,不得转载。