检测含有中文字符串的实际长度
我们在实际过程中要经常去检测含有中文字符串的实际长度,
因为中文字符,和英文字符在一起的话.判断起来你麻烦点.
原理跟在asp中的一样.逐个去判断.是中文加2英文加1.
代码如下:
ASCIIEncoding n = new ASCIIEncoding();
byte[] b = n.GetBytes(str);
int l = 0; // l 为字符串之实际长度
for (int i=0;i <= b.Length-1;i++)
{
if (b[i] ==63) //判断是否为汉字或全脚符号
{
l++;
}
l++;
}
相关推荐
-
php中计算中文字符串长度、截取中文字符串的函数代码
在PHP中,我们都知道有专门的mb_substr和mb_strlen函数,可以对中文进行截取和计算长度,但是,由于这些函数并非PHP的核心函数,所以,它们常常有可能没有开启.当然,如果是用的自己的服务器,则只要在php.ini中开启即可.如果是用的虚拟主机,而服务器又没有开启这方面的函数的话,那就需要我们自己写出点适合咱国情的函数来了. 以下几个函数用起来颇为顺手的.不过要知道,得在utf-8环境下使用. 复制代码 代码如下: header('Content-type:text/html;cha
-
JS版获取字符串真实长度和取固定长度的字符串函数
自动将双字节字符长度计算为2,取字符时也按照单字节的长度取,如2即取1个汉字或两个字母,1取一个汉字或字母. // 得到字符串的真实长度(双字节换算为两个单字节) function getStrActualLen(sChars) { return sChars.replace(/[^\x00-\xff]/g,"xx").length; } // 截取固定长度子字符串 sSource为字符串iLen为长度 function getInterceptedStr(sSource, iLen)
-
计算字符串的长度的多种解决方案集锦
复制代码 代码如下: @echo off & setlocal EnableDelayedExpansion :: 计算字符串的长度 :: :: :began set mystr= set /p mystr=输入要计算长度的字符串(直接回车退出): if not defined mystr goto :eof for /l %%i in (0,1,1000) do if "!mystr:~%%i,1!"=="" set strlen=%%i &&am
-
javascript 判断中文字符长度的函数代码
JS的字符串都是string对象,可以用string对象的length属性可以获取其长度,但是无论是中文.全角符号以及英文最小长度单位都是1,这与php的strlen()并不相同. 复制代码 代码如下: function strlen(str) { var s = 0; for(var i = 0; i < str.length; i++) { if(str.charAt(i).match(/[u0391-uFFE5]/)) { s += 2; } else { s++; } } return
-
正则表达式判断是否存在中文和全角字符和判断包含中文字符串长度
判断是否存在中文和全角字符 str.match(/[^\x00-\xff]/ig) 判断包含中文字符串长度 aMatch=str.match(/[^\x00-\x80]/g); str.length+(!aMatch?0:aMatch.length) javascript 判断中文字符长度 一种: 复制代码 代码如下: function _length(str){ var len=0; for(var i=0;i<str.length;i++){ if(str.charAt(i)>'~'){l
-
Javascript 字符串字节长度计算函数代码与效率分析(for VS 正则)
先看看一下两段代码吧,它们分别用for循环和正则表达式来检测字符串的字节长度: for循环检测字符串的字节长度方法一: 复制代码 代码如下: var lenFor = function(str){ var byteLen=0,len=str.length; if(str){ for(var i=0; i<len; i++){ if(str.charCodeAt(i)>255){ byteLen += 2; } else{ byteLen++; } } return byteLen; } els
-
检测含有中文字符串的实际长度
我们在实际过程中要经常去检测含有中文字符串的实际长度, 因为中文字符,和英文字符在一起的话.判断起来你麻烦点. 原理跟在asp中的一样.逐个去判断.是中文加2英文加1. 复制代码 代码如下: ASCIIEncoding n = new ASCIIEncoding(); byte[] b = n.GetBytes(str); int l = 0; // l 为字符串之实际长度 for (int i=0;i <= b.Length-1;i++) { if (b[i] ==63) //判断是否为汉字或
-
JS实现含有中文字符串的友好截取功能分析
本文实例讲述了JS实现含有中文字符串的友好截取功能.分享给大家供大家参考,具体如下: 在显示字符串的时候,避免字符串过长往往会对字符串进行截取操作,通常会用到js 的 substr 或者 substring方法, 以及 字符串的length属性 对于非中文的字符串处理是很简单的,但是中文字符的 length 属性值 是1 而不是 2 ,所以处理就不是很友好了. 例如 你有一个字符串 1234567890 和 一二三四五六七八九零, 你只想显示五位长度,往往会这样操作 str =
-
CodeIgniter 完美解决URL含有中文字符串
codeIgniter默认的配置下是不允许URL中包含非ASCII字符的,如果URL中含非ASCII字符,那么CI会毫不客气的抛出错误.本文章向码农介绍CodeIgniter 如何解决URL含有中文字符串. 你 可能会说,那我把这个URL使用函数urlencode一下呢?不行.因为Web Server会在接收到一个被urlencode的URL后自动将其decode,然后在PHP里得到的这些字符串转换成他原来所代表的含义,并使用 Web Server自己的URL编码字符集(IIS6 中文版是GBK
-
获取中文字符串的实际长度代码
JS中默认中文字符长度和其它字符长度计算方法是一样的,但某些情况下我们需要获取中文字符串的实际长度,代码如下: 复制代码 代码如下: function strLength(str) { var realLength = 0, len = str.length, charCode = -1; for (var i = 0; i < len; i++) { charCode = str.charCodeAt(i); if (charCode >= 0 && charCode <
-
php自定义函数实现统计中文字符串长度的方法小结
本文实例讲述了php自定义函数实现统计中文字符串长度的方法.分享给大家供大家参考,具体如下: 中文字符计算为2个字符 英文字符计算为1个 代码 /** * 可以统计中文字符串长度的函数 * */ function abslength($str) { $len=strlen($str); $i=0; while($i<$len) { if(preg_match("/^[".chr(0xa1)."-".chr(0xff)."]+$/",$str
-
java判断中文字符串长度的简单实例
话不多说,上代码: /** * 获取字符串的长度,如果有中文,则每个中文字符计为2位 * @param value 指定的字符串 * @return 字符串的长度 */ public static int length(String value) { int valueLength = 0; String chinese = "[\u0391-\uFFE5]"; /* 获取字段值的长度,如果含中文字符,则每个中文字符长度为2,否则为1 */ for (int i = 0; i <
-
python获取中文字符串长度的方法
如下所示: print len('哈哈'.decode('utf-8')) #unicode格式 print len('哈哈') #utf-8格式 以上这篇python获取中文字符串长度的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.
-
php中判断字符串是否全是中文或含有中文的实现代码
一,判断全是中文 复制代码 代码如下: $str="'324是"; if(!eregi("[^\x80-\xff]","$str")){ echo "全是中文"; }else{ echo "不是"; } 二,判断含有中文 复制代码 代码如下: $str = "中文"; if (preg_match("/[\x7f-\xff]/", $str)) { echo &quo
随机推荐
- ASP.NET Core 2.0 使用支付宝PC网站支付实现代码
- 四种数据库随机获取10条数据的方法
- jQuery.prototype.init选择器构造函数源码思路分析
- JavaScript中的包装对象介绍
- swift MD5加密源码的实例详解
- 使用Oracle数据库登录时被告知用户被锁怎么解决
- JQueryEasyUI datagrid框架的进阶使用
- Python使用asyncio包处理并发详解
- Android实现环形进度条代码
- C#使用FileStream复制一个任意文件
- MyBatis动态Sql之if标签的用法详解
- 解决python flask中config配置管理的问题
- python同时替换多个字符串方法示例
- vue利用v-for嵌套输出多层对象,分别输出到个表的方法
- ubuntu环境下反编译android apk的方法
- Python 实现选择排序的算法步骤
- python Event事件、进程池与线程池、协程解析
- springboot v2.0.3版本多数据源配置方法
- JavaScript如何借用构造函数继承
- AngularJS自定义表单验证功能实例详解