计算字符串的长度(汉字按照两个字符计算)

 *
 * @param   string      $str        字符串
 *
 * @return  int
 */
function str_len($str)
{
    $length = strlen(preg_replace('/[x00-x7F]/', '', $str));

    if ($length)
    {
        return strlen($str) - $length + intval($length / 3) * 2;
    }
    else
    {
        return strlen($str);
    }
}

时间: 2024-10-26 22:54:34

计算字符串的长度(汉字按照两个字符计算)的相关文章

JS判断输入字符串长度实例代码(汉字算两个字符,字母数字算一个)_javascript技巧

js判断输入字符串长度实例代码(汉字算两个字符,字母数字算一个) 文本输入时,由于数据库表字段长度限制会导致提交失败,因此想到了此方法验证. 废话不多说上代码: <html> <head> <title>js判断输入字符串长度(汉字算两个字符,字母数字算一个)</title> <style type="text/css"> .pbt { margin-bottom: 10px; } .ie6 .pbt .ftid a, .ie

计算字符串的长度的多种解决方案集锦_DOS/BAT

复制代码 代码如下: @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

计算字符串的长度批处理_DOS/BAT

复制代码 代码如下: @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

C#中汉字当2个字符计算

在当前一个项目中,需要计算字符串的长度,并将固定长度字符截下来,其中汉字要按2个字符计算,数字与字母按1个字符计算,没有找到现成的函数可以使用,参考 如何得到一个汉字和字母组合的字符串的准确的长度( asp.net 版本的 ) http://www.webjx.com/htmldata/2005-10-20/1129777793.html 参考写了以下两个函数,主要功能为按指定长度取copy字符串,取代sub string的功能吧. private int GetLength( String a

又一个字符串,由全角字符,半角字符构成,如何截取该字符串,全角算两个字符

问题描述 又一个字符串,由全角字符,半角字符构成,如何截取该字符串,全角算两个字符 解决方案 解决方案二:看看这个是你要的吗?///<summary>///取中文字串///</summary>///<paramname="content">内容</param>///<paramname="length">长度</param>///<returns></returns>pr

javascript中计算字符串实际长度

知道了以上原理以后,我们就可以算出一个字符串的实际长度了,如果是GBK字符集遇到中文加2,如果是UTF8字符集遇到中文加3即可 实例(这个是我们常用的)  代码如下 复制代码 var jmz = {}; jmz.GetLength = function(str) {     ///<summary>获得字符串实际长度,中文2,英文1</summary>     ///<param name="str">要获得长度的字符串</param>

java中计算字符串长度的方法及u4E00与u9FBB的认识_java

字符串采用unicode编码的方式时,计算字符串长度的方法找出UNICODE编码中的汉字的代表的范围"\u4E00" 到"\u9FBB"之间,由于一个汉字代表两个字符所以可以采用如下方法进行计算字符串的长度 复制代码 代码如下: public static int getCharLength(String content) { int count = 0; for (int i = 0, len = content.length(); i < len; ++i

使用纯JS代码判断字符串中有多少汉字的实现方法(超简单实用)_javascript技巧

在网站开发中,经常会简单使用js代码来判断字符串中有多少汉字的功能.今天小编抽时间给大家分享实现代码.废话不多说了,直接给大家贴代码了. $("form").submit(function () { var content = editor.getContentTxt(); var sum = 0; re = /[\u4E00-\u9FA5]/g; //测试中文字符的正则 if (content) { if (re.test(content)) //使用正则判断是否存在中文 { if

left() 函数是 VBScript 的函数,VBScript 将1个汉字看作1个字符,因此用 left()不能得到正确的字符长度...

vbscript|函数|汉字 left() 函数是 VBScript 的函数,VBScript 将1个汉字看作1个字符,因此用 left()不能得到正确的字符长度. 我自己编写了如下3个函数,用来取代 len().left().right(),希望能解决您的问题. '--------------------------------------------------------'Name:        lenX'Argument:        uStr'Return:'Description