JavaScript中英文 字符串截取

/**
  * 中英文字符串截取
  * @param str  要截取的字符串
  * @param len  要截取的长度
  * @param hasDot 是否在字符串末尾增加‘...‘
  * @returns {string}
  *
  */

function mySubString (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;
    }
时间: 2024-10-20 23:56:47

JavaScript中英文 字符串截取的相关文章

Javascript 中英文字符串截取

1 /** 2 * 中英文字符串截取 3 * @param str 要截取的字符串 4 * @param len 要截取的长度 5 * @param hasDot 是否在字符串末尾增加'...' 6 * @returns {string} 7 * 8 */ 9 10 function mySubString (str, len, hasDot){ 11 var newLength = 0; 12 var newStr = ""; 13 var chineseRegex = /[^\x0

中英文字符串截取类

<?php /** * description:中英文字符串截取 * @author :SunsCheung * @date:2015-09-24 */ class Helper{ public static function truncate_utf8_string($string, $length, $etc = '...') { $result = ''; $string = html_entity_decode(trim(strip_tags($string)), ENT_QUOTES,

JavaScript中字符串截取substring/substr/slice方法总结

最近整前台总多多少少遇到一些字符串截取的小问题,忍不住仔细看了下.接下来总结一下javascript中字符串截取方法的一些应用经验和区别.看了其他博主也有写到,各有风格况且只是个人随记,自己体会的才最深刻. 一些看似简单深究又大有文章的东西弄懂了你才知道自己所学甚浅,部分内容是w3cSchool原文,然后增加了自己的总结和见解.看完有兴趣的也可以去官网查看. 以下为总结: var str = "0123456789"; //此字符串为上下文举例用 一.stringObject.subs

记录这一路上的坎坷--JavaScript之字符串截取

最近在项目中想尽量少用jquery,多用原生JavaScript以便更好的提高.问题就出在一个简单的index提取.这个index我是通过元素的类名来获取,因此使用element.className.substr(-1,1). 这看似没有问题,不过在ie8及之前的ie版本,获取到的却是类名的第一个字符.这便是substr存在的兼容性问题. 在此总结下关于字符串截取的相关方法(参考http://www.w3school.com.cn/): string.substr(start,length) 返

前端学习笔记之九——原生JavaScript实现字符串截取

作业题目如下: ---------------------------------------------------------------- 字符串截取的方法有slice(start,end+1),substring(start,end+1),substr(start,n).他们之间在用法方面也有一些相同或不同. slice(start,end+1):两个参数时,参数指截取位置,截取含头不含尾:一个参数时,默认截取到字符串结尾.参数可以为负数,负数就倒着数位置. substring(star

utf-8 中英文字符串截取

http://www.nowamagic.net/php/php_SubMixedString.php http://waiting.iteye.com/blog/581888 function get_word($string, $length, $dot = '..',$charset='gbk') {          if(strlen($string) <= $length) {         return $string;     }     $string = str_repla

JavaScript substr() 字符串截取函数使用详解

substr 定义和用法 substr() 方法可在字符串中抽取从 start 下标开始的指定数目的字符. 语法 stringObject.substr(start,length) 如果 length 为 0 或负数,将返回一个空字符串.如果没有指定该参数,则子字符串将延续到 stringvar 的最后. 示例 下面的示例演示了substr 方法的用法. 1.截取字符串第一个字符. <script type="text/javascript"> var str="

php 中英文字符串截取,字符串长度

在做PHP开发的时候,由于我国的语言环境问题,所以我们常常需要对中文进行处理.在PHP中,我们都知道有专门的mb_substr和mb_strlen函数,可以对中文进行截取和计算长度,但是,由于这些函数并非PHP的核心函数,所以,它们常常有可能没有开启.当然,如果是用的自己的服务器,则只要在php.ini中开启即可.如果是用的虚拟主机,而服务器又没有开启这方面的函数的话,那就需要我们自己写出点适合咱国情的函数来了. 以下几个函数用起来颇为顺手的.不过要知道,得在utf-8环境下使用. ? 1 2

javascript中字符串截取的两种方法

var testStr = "hello kay!"; 1.substr testStr.substr(1)   ->ello kay! testStr.substr(1,4) ->ello (4是长度) 2.substring testStr.substring(1)   ->ello kay! testStr.substr(1,4) ->ello(4是第4个字符)