在JavaScript中访问字符串的子串

2019-12-18,,,

 使用substring()或slice()方法(NN4+, IE4+),下面说明它们的具体用法。

      substring()的原型为:  

string.substring(from, to)

      第一个参数from指定了子字符串在原字符串中的起始位置(基于0的索引);第二个参数to是可选的,它指定了子字符串在原字符串的结束位置(基于0的索引),一般情况下,它应比from大,如果它被省略,那么子字符串将一直到原字符串的结尾处。

      如果参数from不小心比参数to大了会怎样?JavaScript会自动调解子字符串的起止位置,也就是说,substring()总是从两个参数中较小的那个开始,到较大的那个结束。不过要注意,它包含起始位置的那个字符,但不包含结束位置的那个字符。

   var fullString = "Every dog has his day.";


   var section = fullString.substring(0, 4); // section is "Ever".


   section = fullString.substring(4, 0);   // section is also "Ever".


   section = fullString.substring(1, 1);   // section is an empty string.


   section = fullString.substring(-2, 4); // section is "Ever", same as fullString.substring(0, 4);  slice()的原型为: string.slice(start, end)

      参数start表示子串的起始位置,如果为负数,那么可以理解为倒数第几个开始,例如-3表示从倒数第三个开始;参数end表示结束位置,与start一样,它也可以为负数,其含义也表示到倒数第几个结束。slice()的参数可以为负数,所以要比substring()更加灵活,但没那么宽容了,如果start比end要大,它将返回一个空字符串(示例略)。

      还有一个方法是substr(),其原型为: 

string.substr(start, length)

      从原型可以看出它的参数的含义,start表示起始位置,length则表示子字符串的长度。JavaScript标准不提倡使用该方法。

您可能感兴趣的文章:

  • JavaScript自定义函数实现查找两个字符串最长公共子串的方法
  • js判断一个字符串是否包含一个子串的方法
  • js判断出两个字符串最大子串的函数实现方法
  • JS使用正则表达式找出最长连续子串长度
  • JavaScript检查子字符串是否在字符串中的方法
  • JavaScript判断一个字符串是否包含指定子字符串的方法
  • javascript查找字符串中出现最多的字符和次数的小例子
  • js中通过split函数分割字符串成数组小例子
  • JavaScript计算字符串中每个字符出现次数的小例子
  • javascript下搜索子字符串的的实现代码(北冥有鱼修正版)
  • JavaScript实现求最大公共子串的方法

《在JavaScript中访问字符串的子串.doc》

下载本文的Word格式文档,以方便收藏与打印。