`
wx1569488408
  • 浏览: 79250 次
文章分类
社区版块
存档分类
最新评论

计算含有中文的字符串长度

 
阅读更多
 /**
     * 得到一个字符串的长度,显示的长度,一个汉字或日韩文长度为2,英文字符长度为1
     * @param s 需要得到长度的字符串
     * @return int 得到的字符串长度
     */
    public static int getLength(String s) {
        double valueLength = 0;
        String chinese = "[\u4e00-\u9fa5]";
        // 获取字段值的长度,如果含中文字符,则每个中文字符长度为2,否则为1
        for (int i = 0; i < s.length(); i++) {
            // 获取一个字符
            String temp = s.substring(i, i + 1);
            // 判断是否为中文字符
            if (temp.matches(chinese)) {
                // 中文字符长度为2
                valueLength += 2;
            } else {
                // 其他字符长度为1
                valueLength += 1;
            }
        }
        //进位取整
        return  (int)Math.ceil(valueLength);
    }

转载于:https://my.oschina.net/u/3560494/blog/1619850

分享到:
评论

相关推荐

    JavaScript截取中文字符串

    1. **初始化变量**:定义新字符串长度`newLength`、新字符串`newStr`以及是否添加省略号标志`hasDot`。 2. **判断字符类型**:使用正则表达式`/[^x00-\xff]/g`来判断当前字符是否为非ASCII字符(即中文或其他特殊...

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

    因此,在这篇“Java判断中文字符串长度的简单实例”中,作者提供了几种计算字符串长度的方法,尤其强调了如何正确计算含有中文字符的字符串长度。 首先,Java中字符串的长度使用`.length()`方法来获取,但这个方法...

    判断字符串的长度(优化版)中文占两个字符

    在处理含有中文字符的字符串长度计算时,由于中文字符通常占用的字节数多于英文字符,我们需要采用特殊的处理方法来确保长度计算的准确性。在传统的编程实践中,尤其是在使用JavaScript这样的编程语言时,一个简单的...

    关于java按字节截取带有汉字的字符串的解法

    这就意味着当我们按照字节长度截取字符串时,可能会将一个完整的汉字分割成两部分,从而导致乱码。 Java中的`String`类提供了多种截取字符串的方法,如`substring()`、`subSequence()`等,但它们都是基于字符(char...

    JavaScript获取中英文混合字符串长度的方法示例

    总的来说,处理中英文混合字符串长度的关键在于理解字符编码的不同,并通过遍历字符串来区分中文字符和英文字符。通过自定义函数或利用现有在线工具,我们可以方便地进行这类计算,满足各种应用场景的需求。了解这些...

    字符串相似度比较算法

    如果两个字符串长度相同,Hamming 距离就是不同字符的数量。例如,"kitten" 和 "sitting" 的 Hamming 距离是3,因为有3个位置的字符不同。 5. **Longest Common Subsequence (LCS)**: LCS 是两个字符串中最长的...

    简单教学内容片段-指针-减去指针实现求出字符串长度

    现在,我们来详细讲解如何用指针来计算字符串长度: 1. **声明指针变量**: 我们首先需要声明一个字符指针,让它指向字符串的起始位置。例如: ```c char *str = "Hello"; ``` 2. **初始化第二个指针**: ...

    字符串长度函数strlen和mb_strlen的区分示例介绍_.docx

    在UTF-8编码中,一个中文字符通常由三个字节组成,因此,使用`strlen`函数计算含有中文字符的字符串长度时,每个中文字符会被计作三个字节。 #### mb_strlen函数概述 与`strlen`相比,`mb_strlen`函数更加灵活且...

    MFC字符串类.txt

    在处理不同字符编码的字符串时,计算字符串长度的方式也有所不同。 - **`strlen()`**:返回单字节字符串的长度。 - **`wcslen()`**:返回宽字符串的长度,适用于Unicode。 #### 七、示例代码分析 文档中给出了一...

    PHP获取中英混合字符串长度的方法

    PHP内置的`strlen()`函数默认是基于字节数计算字符串长度的,这意味着它不能准确地反映出含有中文字符的字符串的实际字符数。这是因为中文字符在不同编码格式下占用的字节数不同。例如,在GBK/GB2312编码中,每个...

    OJ_字符串加解密

    4. **字符串处理函数**:C语言中的`strlen()`用于获取字符串长度,`strcpy()`和`strncpy()`用于复制字符串,`strcat()`和`strncat()`用于连接字符串,`strchr()`和`strstr()`用于查找子字符串,这些函数可以辅助我们...

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

    计算包含中文字符的字符串长度的方法一 ```javascript function length(str) { var len = 0; for (var i = 0; i ; i++) { if (str.charAt(i) &gt; '~') { // ASCII码表中,'~'之后为非半角字符 len += 2; // 非...

    精彩编程与编程技巧-混合字符串的长度...

    这里提到的“混合字符串的长度”可能指的是包含不同字符集(如ASCII、Unicode等)的字符串长度计算。不同的字符编码方式会影响到字符串的实际存储长度。 #### Len函数 `Len` 函数用于返回字符串中的字符数或数组...

    C语言-字符串处理集锦

    - 计算字符串长度:可以通过遍历字符数组,直到遇到'\0'来计算字符串长度,例如`while(*p) { n++; p++; }`。 - 自定义字符串拷贝:可以通过下标或指针循环实现字符串的复制,例如`for(p = s, q = t; *q != '\0';) ...

    字符串最长回文实现

    这种算法在处理含有大量回文子串的字符串时尤其有效。 总之,理解和实现寻找字符串最长回文子串的算法对提升编程技能非常有帮助,无论是动态规划的思路还是Manacher's Algorithm的巧妙设计,都能加深对字符串处理和...

    J2ME中比较字符串是否存在包含关系的算法

    2. **长度比较**:如果`str1`的长度小于`str2`,则进行字符串交换。 3. **遍历检查**:通过一个循环遍历`str1`中的所有可能的起始位置(从`0`到`size`),检查从当前位置开始的子串是否与`str2`完全相同。如果找到...

    获取中文字符串的实际长度代码

    因此,当我们需要精确地计算包含中文字符的字符串长度时,不能简单地用字符串的长度属性来衡量。以下将详细解释这个概念,并提供一个JavaScript的函数示例来计算中文字符串的实际长度。 首先,了解字符编码是理解这...

    高级语言程序设计:chap08_字符串.ppt

    - C标准库提供了若干字符串处理函数,如`strlen`计算字符串长度,`strcpy`复制字符串,`strcat`连接字符串,`strcmp`比较字符串等。 - 使用这些函数可以实现更复杂的字符串操作,如字符串的复制、比较、连接等,而...

    sqlserver中求字符串中汉字的个数的sql语句

    在SQL Server中,有时我们需要统计一个字符串中汉字的数量,这对于处理中文数据时非常有用。本文将详细介绍如何使用SQL语句来实现这一功能,并探讨其中涉及的两个关键知识点:`LEN()`函数和`DATALENGTH()`函数。 ...

Global site tag (gtag.js) - Google Analytics