JS截取字符串的方法详解

substr() 方法

substr() 方法可在字符串中抽取从 start 下标开始的指定数目的字符。

stringObject.substr(start,length)

start:必需。要抽取的子串的起始下标。必须是数值。如果是负数,那么该参数声明从字符串的尾部开始算起的位置。

也就是说,-1 指字符串中最后一个字符,-2 指倒数第二个字符,以此类推。

length:可选。子串中的字符数。必须是数值。如果省略了该参数,那么返回从 stringObject 的开始位置到结尾的字串。

记住: substr() 的第二个参数是长度

var str="abcdefg";
str.substr(3)  //  defg
str.substr(3,2)  // de (2表示长度,是下标为3开开始,包括3之后的两个字符)
str.substr(-2)  // fg  2 倒数第二个字符到结尾的字符串
str.substr(-3,2) // ef  倒数第三个字符开始

substring() 方法

substring() 方法用于提取字符串中介于两个指定下标之间的字符。

stringObject.substring(start,stop)

start:  必需。一个非负的整数,规定要提取的子串的第一个字符在 stringObject 中的位置。

stop: 可选。一个非负的整数,比要提取的子串的最后一个字符在 stringObject 中的位置多 1。

如果省略该参数,那么返回的子串会一直到字符串的结尾。

返回值: 一个新的字符串,该字符串值包含 stringObject 的一个子字符串,其内容是从 start 处到 stop-1 处的所有字符,其长度为 stop 减 start。

说明:  substring() 方法返回的子串包括 start 处的字符,但不包括 stop 处的字符。

如果参数 start 与 stop 相等,那么该方法返回的就是一个空串(即长度为 0 的字符串)。如果 start 比 stop 大,那么该方法在提取子串之前会先交换这两个参数。

var str="abcdefg"

str.substring(3) //  defg
str.substring(3,3) //  空的字符串
str.substring(3,5)  //  de 下标为3开始(包括3),到下表为5(不包括5)的字符串
str.substring(5,3)  //  de 当第一个参数 > 第二个参数 时 该方法执行时会先交换两个参数,变成:str.substring(3,5)
str.substring(-3) //  abcdefg substring()不接受负数的参数,参数为负数是,返回原字符串

slice() 方法

slice() 方法可从已有的数组中返回选定的元素。

arrayObject.slice(start,end)

start:必需。规定从何处开始选取。如果是负数,那么它规定从数组尾部开始算起的位置。也就是说,-1 指最后一个元素,-2 指倒数第二个元素,以此类推。

end:可选。规定从何处结束选取。该参数是数组片断结束处的数组下标。如果没有指定该参数,那么切分的数组包含从 start 到数组结束的所有元素。如果这个参数是负数,那么它规定的是从数组尾部开始算起的元素。

var str="abcdefg"
str.slice(3)  // defg
str.slice(3,5)  // de
str.slice(-2)   //fg
str.slice(3,-2) //  de
str.slice(-4,-2) // de 负值参数从后面数起, -1表示最后一个元素
str.slice(3,-6) //空数组,当第二个参数指定的元素索引 < 第一个餐宿指定的元素索引,返回空数组

// 如果是数组,则返回一个新数组
var arr = ['a','b','c','d','e','f','g']
str.slice(3)  // ['d','e','f','g']

总结

substr():第一个参数表示元素索引可以为负数, 第二个参数表示截取的字符串长度。

substring():两个参数都不接受负数,都表示元素索引,如果 第一个参数 比 第二个参数大,那么该方法在提取子串之前会先交换这两个参数。

slice(): 两个参数都接受负数,都表示元素索引, 如果 第一个参数 比 第二个参数大,返回空字符串。

到此这篇关于JS截取字符串的方法详解的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • JS截取与分割字符串常用技巧总结

    本文实例讲述了JS截取与分割字符串的常用方法.分享给大家供大家参考,具体如下: JS截取字符串可使用 substring()或者slice()   函数:substring() 定义:substring(start,end)表示从start到end之间的字符串,包括start位置的字符但是不包括end位置的字符. 功能:字符串截取,比如想从"MinidxSearchEngine"中得到"Minidx"就要用到substring(0,6) 例子: var src=&q

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

    substr 定义和用法 substr() 方法可在字符串中抽取从 start 下标开始的指定数目的字符. 语法 stringObject.substr(start,length) 参数 描述 start 必需.要抽取的子串的起始下标.必须是数值.如果是负数,那么该参数声明从字符串的尾部开始算起的位置.也就是说,-1 指字符串中最后一个字符,-2 指倒数第二个字符,以此类推. length 可选.子串中的字符数.必须是数值.如果省略了该参数,那么返回从 stringObject 的开始位置到结尾

  • JS截取字符串常用方法详细整理

    使用 substring()或者slice() 函数:split() 功能:使用一个指定的分隔符把一个字符串分割存储到数组 例子: str="jpg|bmp|gif|ico|png"; arr=theString.split("|"); //arr是一个包含字符值"jpg"."bmp"."gif"."ico"和"png"的数组 函数:Join() 功能:使用您选择的分

  • js substring()字符串截取函数

    使用方法: 复制代码 代码如下: str.substring(start, end) "String Literal".substring(start, end) 其中"start"是指明要截取字符串的起始位置,该索引从0 开始起算."end"是指明要截取字符串的结束位置,该索引从0 开始起算. JavaScript中substring()函数方法将返回一个包含从start 到最后(不包含end )的子字符串的字符串. JavaScript中su

  • JavaScript截取字符串的Slice、Substring、Substr函数详解和比较

    在JavaScript中,提取子字符串主要是通过 Slice.Substring.Substr 三个方法之一. 复制代码 代码如下: // slice // 语法: string.slice(start [, stop])"Good news, everyone!".slice(5,9); // 'news' // substring // 语法: string.substring(indexA [, indexB])"Good news, everyone!".s

  • JS截取字符串的三种方法详解

    JS提供三个截取字符串的方法,分别是:slice(),substring()和substr(),它们都可以接受一个或两个参数: var stmp = "rcinn.cn"; 使用一个参数 alert(stmp.slice(3));//从第4个字符开始,截取到最后个字符;返回"nn.cn" alert(stmp.substring(3));//从第4个字符开始,截取到最后个字符;返回"nn.cn" 使用两个参数 alert(stmp.slice(1

  • JS使用正则截取两个字符串之间的字符串实现方法详解

    本文实例讲述了JS使用正则截取两个字符串之间的字符串方法.分享给大家供大家参考,具体如下: 一个最常用的场景 截取两个字符串中间的字符串 var str = "iid0000ffr"; var substr = str.match(/id(\S*)ff/); alert(substr2); 你会发现逗号后面是你要的东西 /S*表示多个字符串 为什么想要的东西在逗号后,也就是数组第二个. 是因为match的返回数组,第一个表示匹配的字符串,这里是包括id ff的,结果是id0000ff

  • JS基于正则截取替换特定字符之间字符串操作示例

    本文实例讲述了JS基于正则截取替换特定字符之间字符串操作.分享给大家供大家参考,具体如下: 示例1: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"&

  • JS 截取字符串substr 和 substring方法的区别

    substr 方法 返回一个从指定位置开始的指定长度的子字符串. stringvar.substr(start [, length ]) 参数 stringvar 必选项.要提取子字符串的字符串文字或 String 对象. start 必选项.所需的子字符串的起始位置.字符串中的第一个字符的索引为 0. length 可选项.在返回的子字符串中应包括的字符个数. 说明 如果 length 为 0 或负数,将返回一个空字符串.如果没有指定该参数,则子字符串将延续到 stringvar 的最后. 示

  • JavaScript常用截取字符串的三种方式用法区别实例解析

    stringObject.substring(start,stop) 用于提取字符串中介于两个指定下标之间的字符. start必需.一个非负的整数,规定要提取的子串的第一个字符在 stringObject 中的位置. stop可选.一个非负的整数,比要提取的子串的最后一个字符在 stringObject 中的位置多 1.如果省略该参数,那么返回的子串会一直到字符串的结尾. start从0开始 到stop(不包含stop)结束 不接受负的参数. stringObject.substr(start,

  • JavaScript 截取字符串代码实例

    这篇文章主要介绍了JavaScript 截取字符串代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 代码如下 <script> $(document).ready(function () { //下标从0开始 let str = '123456789'; //使用一个参数 console.log(str.slice(3)) //从第4个字符开始,截取到最后个字符;返回"456789" console.log(str.

  • JS正则截取两个字符串之间及字符串前后内容的方法

    本文实例讲述了JS正则截取两个字符串之间及字符串前后内容的方法.分享给大家供大家参考,具体如下: 1.js截取两个字符串之间的内容: var str = "aaabbbcccdddeeefff"; str = str.match(/aaa(\S*)fff/)[1]; alert(str);//结果bbbcccdddeee 2.js截取某个字符串前面的内容: var str = "aaabbbcccdddeeefff"; tr = str.match(/(\S*)ff

  • JavaScript截取、切割字符串的技巧

    对于字符串的切割截取平时所用可能不是特别多,而且分的比较细,所以自备自查.有备无患. 由于之前所有均在一个demo测试,若是哪里打错了,敬请谅解.一些其余属性找时间继续添加. 1.函数:split() 功能:使用一个指定的分隔符把一个字符串分割存储到数组 例子: str="jpg|bmp|gif|ico|png"; arr=str.split("|"); //arr是一个包含字符值"jpg"."bmp"."gif&q

  • js字符串截取函数slice、substring和substr的比较

    在js中字符截取函数有常用的三个slice().substring().substr()了,下面我来给大家介绍slice().substring().substr()函数在字符截取时的一些用法与区别吧. 取字符串的三个函数:slice(start,[end]),substring(start,[end])和substr(start,[length]) 相关属性: slice() 第一个参数代表开始位置,第二个参数代表结束位置的下一个位置,截取出来的字符串的长度为第二个参数与第一个参数之间的差;若

随机推荐