时间:2021-05-22
比如新浪微博发微博的输入框有一个已输入字数的统计,它的规则推测是:汉字和中文标点算 1 个字数,英文和其他符号算 0.5 个字数。不足 1 个字算 1 个。大家可以去微博体验一下计算方式。
golang 可以使用正则和 unicode 包的方法判断。
以下函数 GetStrLength 返回输入的字符串的字数,每个汉字和中文标点算 1 个字数,英文和其他字符算半个字数,不足 1 个字算 1 个。
// GetStrLength 返回输入的字符串的字数,汉字和中文标点算 1 个字数,英文和其他字符 2 个算 1 个字数,不足 1 个算 1个func GetStrLength(str string) float64 { var total float64 reg := regexp.MustCompile("/·|,|。|《|》|‘|'|”|“|;|:|【|】|?|(|)|、/") for _, r := range str { if unicode.Is(unicode.Scripts["Han"], r) || reg.Match([]byte(string(r))) { total = total + 1 } else { total = total + 0.5 } } return math.Ceil(total)}1:获取字符串字节的个数,并按字节挨个输出
输出:
9
abcéé¯
2:获取字符串元素的个数,并按元素挨个输出
输出:
24
I love my family!我爱我的家人!
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
在golang中不能直接用len函数来统计字符串长度,查看了下源码发现字符串是以UTF-8为格式存储的,说明len函数是取得包含byte的个数//stringi
本文实例讲述了python统计字符串中指定字符出现次数的方法。分享给大家供大家参考。具体如下:python统计字符串中指定字符出现的次数,例如想统计字符串中空格
有时候我们需要计算一个字符串中包含的字数,对于纯英文字符串,字数等于字符串长度,用strlen函数即可获得,但如果字符串中包含中文怎办?mb_strlen可以实
本文实例讲述了java实现统计字符串中字符及子字符串个数的方法。分享给大家供大家参考,具体如下:这里用java实现统计字符串中的字符(包括数字、大写字母、小写字
本文实例讲述了Java简单统计字符串中汉字,英文字母及数字数量的方法。分享给大家供大家参考,具体如下:packageorg.zhy.demo.algorithm