页面导航: 首页网络编程JavaScript应用技巧 → 正文内容 js截取中文字符串

用javascript实现截取字符串包含中文处理的函数

发布:dxy 字体:[增加 减小] 类型:转载
一直不知道js可以截取中文字符,呵呵,原理用正则表达式,匹配中文的长度,中文算两个,因为算一个,是个好东西,推荐大家收藏


/* 2007-11-28 XuJian */ 
//截取字符串 包含中文处理 
//(串,长度,增加...) 
function subString(str, len, hasDot) 

    var newLength = 0; 
    var newStr = ""; 
    var chineseRegex = /[^\x00-\xff]/g; 
    var singleChar = ""; 
    var strLength = str.replace(chineseRegex,"**").length; 
    for(var i = 0;i < strLength;i++) 
    { 
        singleChar = str.charAt(i).toString(); 
        if(singleChar.match(chineseRegex) != null) 
        { 
            newLength += 2; 
        }     
        else 
        { 
            newLength++; 
        } 
        if(newLength > len) 
        { 
            break; 
        } 
        newStr += singleChar; 
    } 
    if(hasDot && strLength > len) 
    { 
        newStr += "..."; 
    } 
    return newStr; 
}

点击运行可以看到效果:
[Ctrl+A 全选 提示:你可先修改部分代码,再按运行]

浏览次数:载入中... 打印本文关闭本文返回首页

文章评论

共有 位脚本之家网友发表了评论我来说两句

同 类 文 章
最 近 更 新
热 点 排 行