`
zpball
  • 浏览: 898034 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

汉字/英文字符长度判断--JS版与Java方法版

 
阅读更多
http://www.blogjava.net/loyalgl/archive/2010/12/15/340739.html
汉字/英文字符长度判断--JS版与Java方法版

JS方法:

<script   language=javascript>
String.prototype.lenB   =   function(){return   this.replace(/[^\x00-\xff]/g, "**").length;}
var   str   =   "这是一个可以将汉字计算成两个字节的函数 ";
alert( "老的算法   =   "   +   str.length);
alert( "新的算法   =   "   +   str.lenB());
</script> 


说明:上面JS里方法里的"**"表示把一个中文替换成英文的位数。"**"代表一个中文=两个英文

java方法:

 /**
      * 获取字符串的长度,如果有中文,则每个中文字符计为2位
      *
      * @param value
      *            指定的字符串
      * @return 字符串的长度
      */
     public int chineseLength(String value) {
         int valueLength = 0;
         String chinese = "[\u0391-\uFFE5]";
         /* 获取字段值的长度,如果含中文字符,则每个中文字符长度为2,否则为1 */
         for (int i = 0; i < value.length(); i++) {
             /* 获取一个字符 */
             String temp = value.substring(i, i + 1);
             /* 判断是否为中文字符 */
             if (temp.matches(chinese)) {
                 /* 中文字符长度为2 */
                 valueLength += 2;
             } else {
                 /* 其他字符长度为1 */
                 valueLength += 1;
             }
         }
         return valueLength;
     }


说明:我想大家一看就懂了吧,关键语句是第18行。
分享到:
评论

相关推荐

    字符串(汉字)长度判断

    针对Oracle数据库中汉字在不通的字符集下所占字符长度不通,在保存时可能需要对源字符串的长度进行判断。 实现过程如下 /** * 针对汉字 进行计算长度 * @param string 计算的字符串 * @param ...

    java中判断字段真实长度的实例(中文2个字符,英文1个字符)

    下面小编就为大家带来一篇java中判断字段真实长度的实例(中文2个字符,英文1个字符)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

    javascript 判断中文字符长度的函数代码

    JS的字符串都是string对象,可以用string对象的length属性可以获取其长度,但是无论是中文、全角符号以及英文最小长度单位都是1,这与php的strlen()并不相同。 代码如下: function strlen(str) { var s = 0; for(var...

    统计中英文混合文本长度java版

    计算字符串的真实长度(每个汉字占2个字符大小)

    Java中英文字符类型统计.rar

    Java字符类型统计,输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。将arrChar中的每个字符转换为String类型之后,存放在arrStr数组中,创建一个String类型的数组,其长度为arrChar的长度,然后...

    java判断中文字符串长度的简单实例

    下面小编就为大家带来一篇java判断中文字符串长度的简单实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

    Java字符串常用方法

    判断字符串为空 判断Email有效性 判断身份证号码有效性 判断手机号码有效性 判断是否含有特殊字符 校验是否是中文名字 包括 姓名 • 校验是否是英文名字 将字符串转换为大写 将字符串转换为小写 判断字符串是否为...

    java 中字符串只中英数字混合需要分割的解决办法

    这个方法用来处理java中可能有一些特别的需要,一大串中英文混合,需要中间截断或是中英中间添加一些特别的标识,调用这个方法 第一个参数是要处理的字符串,第二个是要在中英字符中间插入的字符。调用就可以得到想...

    在javascript中如何得到中英文混合字符串的长度

    有同事在公司的OA上发了个贴子,介绍在javascript中如何得到中英文混合字符串的长度。 用的是正则表达式。 代码如下: var str = ”坦克是tank的音译”; var len = str.match(/[^ -~]/g) == null ? str.length : str....

    Java-PHP正则表达式的使用

    匹配中文字符的正则表达式: [u4e00-u9fa5]  评注:匹配中文还真是个头疼的事,有了这个表达式就好办了  匹配双字节字符(包括汉字在内):[^x00-xff]  评注:可以用来计算字符串的长度(一个双字节字符长度计2...

    Java程序设计基础:String类的常用方法(一.pptx

    中文、英文都算作一个字符。 其语法形式如下:字符串名.length(); 例1:在某系统中对管理员密码有这样的规定,即密码长度不得少于6位。 获取字符串的长度 public static void main(String[ ] args) { System.out....

    Struts 自定义 字符串长度校验

    这个一个简单的输入校验工程,通过 struts 的 校验文件 ActionName-validation.xml 文件 和 扩展的 校验类 CheckStringLength 进行字符串长度校验。工程使用 MyEclipse 8.5 编译,可以正常运行。

    regular.md

    正则表达式的java方法,笔记文档,欢迎下载 验证姓名 2 到 9 位中文昵称:^[\u4e00-\u9fa5]{2,9}$ 验证密码 只能是字母、数字和下划线,长度不限制:^\w+$ 允许 小写字母 a-z、大写字母 A-Z、数字 0-9、下划线 _...

    正则表达式

    匹配中文字符的正则表达式: [\一-\龥] 评注:匹配中文还真是个头疼的事,有了这个表达式就好办了 匹配双字节字符(包括汉字在内):[^\x00-\xff] 评注:可以用来计算字符串的长度(一个双字节字符长度计2,ASCII字符...

    java 正则表达式

    应用:计算字符串的长度(一个双字节字符长度计2,ASCII字符计1)String.prototype.len=function(){return this.replace(/[^\x00-\xff]/g,"aa").length;} 匹配空行的正则表达式:\n[\s| ]*\r 匹配html标签的正则...

    正则表达式判断是否存在中文和全角字符和判断包含中文字符串长度

    对于一些更安全的容错严重,需要用到

    Java中文字符所占的字节数

    Java语言中,中文字符所占的字节数取决于字符的编码方式,一般情况下,采用ISO8859-1编码方式时,一个中文字符与一个英文字符一样只占1个字节;采用GB2312或GBK编码方式时,一个中文字符占2个字节;而采用UTF-8编码...

    js常用验证函数库 提供常用的验证函数,如日期、身份证、数字等,另外提供了一些java中有但js中没有提供的函数,如trim(),取中文字符串长度等

    提供常用的验证函数,如日期、身份证、数字等,另外提供了一些java中有但js中没有提供的函数,如trim(),取中文字符串长度等

    java字符串处理类

    判断一个字符是Ascill字符还是其它字符(如汉,日,...得到一个字符串的长度,显示的长度,一个汉字或日韩文长度为2,英文字符长度为1 截取一段字符的长度,不区分中英文,如果数字不正好,则少取一个字符位 生成随机字符串

Global site tag (gtag.js) - Google Analytics