在javascript中如何得到中英文混合字符串的长度。
用的是正则表达式。
var str = ”坦克是tank的音译”;
var len = str.match(/[^ -~]/g) == null ? str.length : str.length + str.match(/[^ -~]/g).length ;
我查了一下书,有点明白了:
西文常用字符集由空格“ ”(0x20)到“~”(0x7e)构成,汉字会落在这个字符集外,而正则表达式[^ -~]表示除空格到“~”外的字符集。
string.match(regex) 会以数组形式返回字符串string中匹配正则表达式regex的子串,所以,
str.match(/[^ -~]/g)会以数组的形式返回一个个汉字。例如
var str = "dd大哥";
//显示"大,哥",数组中返回两个汉字,数组长度为2
alert(str.match(/[^ -~]/g));
这样,var len = str.match(/[^ -~]/g) == null ? str.length : str.length + str.match(/[^ -~]/g).length ;就可以得到str的正确长度了。
在javascript中,一个汉字的长度也被计算为1,常常在提交到数据库中造成长度超标的错误,现在用这个方法,可以在提交前先检测一番了
分享到:
相关推荐
有同事在公司的OA上发了个贴子,介绍在javascript中如何得到中英文混合字符串的长度。 用的是正则表达式。 代码如下: var str = ”坦克是tank的音译”; var len = str.match(/[^ -~]/g) == null ? str.length : str....
主要介绍了JavaScript获取中英文混合字符串长度的方法,结合实例形式分析了javascript通过遍历转换字符串实现统计字符串长度的操作技巧,需要的朋友可以参考下
JavaScript 中关于字符串字节长度的计算比较(含汉字字符串) 可用于验证字符串长度。效率比较高。
自己写的一个判断英文中文和中文符号的js换行处理这次写项目用到了,大家有用就下下来看看!
C#和Javascript两种语法判断混合字符长度,有利于Web程序开发避免存储字符串的错误
本文主要针对Javascript中字符串相关常用的使用方法进行了总结
本文实例讲述了javascript实现的字符串与十六进制表示字符串相互转换方法。分享给大家供大家参考。具体如下: 之所以写这个,是因为发现SQL注入和XSS中经常利用十六进制表示的字符串,比如 SELECT CONCAT(0x68656c6...
JavaScript中的字符串操作 .txt
JavaScript字符串函数大全 JS自带函数 JavaScript字符串函数大全 JS自带函数
javascript字符串操作,有对其中字符串的各种操作方法
在前台应用进我们经常会碰到要删除用户输入的字符中的空格的问题,下面我们来介绍一下javascript中使用正则表达式实现删除字符串中的空格方法
自己整理的关于javaScript中的字符串操作
JS自带函数,concat,indexOf,将整个字符串转成小写字母,通过将字符串划分成子串,将一个字符串做成一个字符串数组。
用js方法substring()、方法substr()实现如标题所示的截取字符串并支持中英文混合,具体代码如下,感兴趣的各位可以参考下哈
javascript 常用字符串函数
字符串都是由若干字符组成的,这些字符的数量就是字符串的长度,通过字符串的长度可以获取整个字符串的长度。 2.4.3 字符串型 4、字符串拼接 多个字符串之间可以使用+进行拼接,其拼接方式为字符串+任何类型=拼接...
便于英文和中文的区别,这个是专门截取字符串的,例如英文abcd截取4位,中文值截取2位!很简单!
主要介绍了JavaScript判断一个字符串是否包含指定子字符串的方法,实例分析了javascript字符串操作的技巧,非常具有实用价值,需要的朋友可以参考下