纯js截取文字

<script>
/* 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;
}
alert(subString("字符串截取测试 www.systn.com 是一个PHP开发学习的网站",10));
</script>
posted @ 2009-08-24 17:16  PointNet  阅读(683)  评论(0编辑  收藏  举报