`
bicashy
  • 浏览: 159616 次
社区版块
存档分类
最新评论

获取字符串的长度

 
阅读更多

       一般取字符串的长度都会用到 str.length(),.length得到的是字符长度,不是字节长度,一个汉字和一个英文字符都是算一个字符的,在不同编码格式中,汉字占用的字节是不同的,比如在GB2312中汉字是2个字节,而在UTF-8编码格式中是3个字节,所以要根据不同的编码来计算。

 

 在js脚本中

比如在GB2312中:
function getByteForGB(s)
{
     return s.replace(/[^\u0000-\u007f]/g, "\u0061\u0061").length;
} 

在UTF-8中:
function getByteForUTF(s)
{
     a=s.replace(/[\u0000-\u007f]/g, "\u0061");
     b=a.replace(/[\u0080-\u07ff]/g, "\u0061\u0061");
     c=b.replace(/[\u0800-\uffff]/g, "\u0061\u0061\u0061");
  
     return c.length;
}

  

    对于JAVA后台处理,例如针对utf-8编码

    

  /**
     * UTF-8的情况下统计输入的字节数
      * @param strValue
     * @return
     */
    public static int getStrLength(String strValue)
    {
        int length = 0;
        int count = 0;

        // --------------------------oneChar
        String regex = "[\u0000-\u007f]";
        count = getCountByRegex(regex, strValue);
        length += count;
        // --------------------------twoChar
        regex = "[\u0080-\u07ff]";
        count = getCountByRegex(regex, strValue);
        length += count * 2;
        // --------------------------triChar
        // utf-8字符下,一个汉字占3个字节
          regex = "[\u0800-\uffff]";
        count = getCountByRegex(regex, strValue);
        length += count * 3;

        return length;
    }

    /**
     * 根据正则获取匹配到得字符数量
     * @param regex 正则表达式
     * @param strValue
     * @return
     */
    public static int getCountByRegex(String regex, String strValue)
    {
        int count = 0;
        Pattern p = Pattern.compile(regex);
        Matcher m = p.matcher(strValue);
        while (m.find())
        {
            count++;
        }

        return count;
    }

 

  

   

分享到:
评论

相关推荐

    TIA博途WINCC的触摸屏VB脚本入门(Len函数获取字符串长度以及Right和Left函数).docx

    Dim lenth As Integer = Len(strInput) ' 获取字符串长度 Dim leftLenth As Integer = 2 ' 设定从左边取的字符数 Dim rightLenth As Integer = 3 ' 设定从右边取的字符数 ' 使用Len函数 lenth = Len(strInput) ' ...

    常见的获取字符串长度的方法

    本文将详细介绍几种常用的获取字符串长度的方法,包括这些方法的工作原理、适用场景以及潜在的限制。 ### 一、使用`sizeof`获取字符串长度 `sizeof`运算符是一种基本的C/C++语法,用于计算数据类型或变量的字节数...

    常见的VC获取字符串长度的方法[定义].pdf

    常见的VC获取字符串长度的方法 在软件开发中,获取字符串长度是一个常见的操作,但是字符串长度的定义并不唯一,通常是指字符串中包含字符的数目,但有的时候人们需要的是字符串所占字节的数目。下面将介绍五种常见...

    java获取字符串长度不够补

    java获取字符串长度,长度不够补相应的字符串

    C语言写的一些字符串处理函数,包括连接,查找重复字符和获取字符串长度

    再者,获取字符串长度可以使用内置的`strlen`函数,但如果需要自己实现,可以遍历字符串直到遇到空字符`\0`为止,计数器的值就是字符串长度。需要注意,这种方法不适用于包含空字符的字符串,因为它会误判字符串长度...

    截取指定长度的字符串

    1. 固定位置截取:这种方法通常基于起始位置和结束位置来获取字符串的一部分。例如,在Python中,你可以使用切片操作符`[start:end]`来截取字符串,其中`start`是开始索引,`end`是结束索引(不包括该位置的字符)。...

    可以获取字符窜长度的批处理算法实例

    This is a bat file that can get a string length, and without using any other tools, it can make this happen by windows dos command only. Usage: stringlen.bat 1234567890 return:StringLenth=10 ...

    使用MATLAB进行字符串数组长度计算(附详细步骤).txt

    本文将详细介绍如何使用MATLAB来计算字符串数组中每个字符串的长度,并找出其中最长的字符串长度。这不仅有助于理解MATLAB中的基本字符串操作,而且还能提高对文本数据处理的能力。 #### 二、基础知识介绍 在开始...

    用指针计算字符串长度

    用指针计算字符串长度,简单的小程序,c语言

    mysql获取字符串长度函数(CHAR_LENGTH)

    length: 是计算字段的长度一个汉字是算三个字符,一个数字或字母算一个字符CHAR_LENGTH(str) 返回值为字符串str 的长度,长度的单位为字符。一个多字节字符算作一个单字符。对于一个包含五个二字节字符集, LENGTH()...

    JS获取带中文字符的字符串长度

    一个JS函数,可以获取你当前输入的字符串的长度,其中中文字符和全角字符是2个长度

    Shell获取字符串长度的多种方法总结

    前言 我们在日常工作中,对于求字符串操作在shell...【方法三】:利用awk的NF项来获取字符串长度 备注: -F为分隔符,NF为域的个数,即单行字符串的长度 【方法四】:利用wc的-L参数来获取字符串的长度 备注: -L参数  

    Shell脚本中计算字符串长度的5种方法

    ### Shell脚本中计算字符串长度的五种方法...除了上述方法外,Shell脚本中还可能存在其他获取字符串长度的方式,例如使用 `sed`、`cut` 等工具结合起来实现。欢迎大家在评论区分享更多实用的技巧和建议,共同学习进步。

    获取中文字符串长度的函数(VB6.0代码编写)

    在VB6.0编程环境中,处理...总之,获取中文字符串长度的关键在于正确处理字符编码,特别是非ASCII字符。通过自定义函数或利用现有的库和工具,我们可以准确地计算出中文字符串的长度,从而在编程中更好地处理中文数据。

    求字符串长度的几种方法

    在计算机编程中,获取字符串长度是处理文本数据时一个常见的需求。本文将详细介绍并对比四种不同的方法来求解字符串长度,这四种方法包括直接调用C语言中的标准库函数`strlen()`、自行编写非递归版本的`strlen()`...

    易语言源码获取字符串尺寸.7z

    1. **字符串长度**:在易语言中,获取字符串长度的方法是使用“字符串长度”命令。例如,如果你有一个变量`str`存储了字符串,你可以使用`字符串长度(str)`来获取该字符串中字符的数量。这个数值不包括结束符,对于...

    字符串长度的判断 JAVA

    要获取字符串的长度,可以调用`length()`方法。这个方法返回字符串中字符的数量,不包括任何末尾的空格。对于`panduan`,`length()`方法将返回2,因为"你好"中有两个字符。 ```java int length = panduan.length();...

    求字符串长度的函数.rar

    在Python中,获取字符串长度的方法非常简单,我们使用内置的`len()`函数。`len()`函数是一个非常实用的工具,不仅可以用于计算字符串的长度,还可以用于计算列表、元组、字典等数据结构的元素数量。对于字符串,它...

Global site tag (gtag.js) - Google Analytics