实例
代码如下 | 复制代码 |
<script type="text/javascript"> function cLength(str){ var reg = /[^u4E00-u9FA5uf900-ufa2d]/g; //匹配非中文的正则表达式 var temp = str.replace(reg,''); return temp.length; } var str = "中文123"; document.write(str.length+'<br />'); document.write(cLength(str)); </script> |
结果:
5
2
中文两个,数字三个,正确
实例
分别检查中文与英文长度,中文为2字节,英文为1字节
代码如下 | 复制代码 |
<script language="vbscript"> Function LeftStr(Str) TextCount = Len(Str) '得到整 For I = 1 To TextCount MidTemp = Mid(Str,I,1)'得到当前第I个字符 AscTemp = Asc(MidTemp)'得到当前第I个字符的ANSI代码 If AscTemp > 0 Then '判断英文 TextLen = TextLen + 1'累计当前长度(英文) Else'判断中文 TextLen = TextLen + 2'累计当前长度(中文) End If Next LeftStr = TextLen '输出 End Function msgbox """abcdefg""的长度为:"&leftstr("abcdefg") msgbox """加上中文试试!""的长度为:" &leftstr("加上中文试试!") </script> |
实例
代码如下 | 复制代码 |
<script> String.prototype.tLength=function(){ temp=this.replace(/([^x00-xff])/g,"$1$1"); return temp.length } alert("中英Quiz".length) alert("中英quiz".tLength()) </script> |
实例
下面的测试也正确。
代码如下 | 复制代码 |
var str = "中文123tets@#!#%$#[][{}"; document.write(str.length+'<br />'); document.write(cLength(str)); |
时间: 2024-10-27 05:06:34