JS常用的4种截取字符串方法

目录
  • JS常用的4种截取字符串方法
  • 补充:js中常遇到 切割截取字符串的几种方法
    • 切割截取字符串的几种方法

JS常用的4种截取字符串方法

平常经常把这几个api的参数记混了,于是打算记录下来,当不确定的时候在拿出来翻翻;

在做项目的时候,经常会需要截取字符串,所以常用的方法有slice()、substr()、substring()、match()方法等,四个方法的使用如下所示;

<script type="text/javascript">
        // 截取字符串的方法
        //注意1、字符串的截取都是从左向右,不会有从右向左截取;2、slice与substring方法,截取返回的字符串包含numStart而不包含numEnd;3、注意slice方法当numStart大于numEnd时截取为空而substring当numStart大于numEnd时回调换二者位置,截取numEnd到numStart之间的字符串
        var str = "HellohappyworldHello!";
        //1.slice(numStart,numEnd)  返回的值为截取指定下标之间的字符串,参数可以为负数,可以不填,正整数表示从左向右读取小兵截取,负整数表示从右向左读取下标截取,当第一个开始下标参数为负整数时,第二个参数不需要了,如果写上不管是正整数还是负整数都截取为空的字符串,总结如下,不填参数时,截取取的是原字符串,第一个参数为正整数时,第二个参数,可不填(即为到字符串结尾),可填正整数(即从start-end),可以为负整数(即start-(str.length+end)),第一个参数为负整数时(即从右向左读取下标截取,右是从-1开始),第二个参数写上会截取为空,最后注意第二个参数都不能大于第一个参数,可以与坐标轴类比
        var sliceStr1 = str.slice(2);  //llohappyworldHello!
        var sliceStr2 = str.slice(2,7); //lloha
        var sliceStr3 = str.slice(-2); //o!
        var sliceStr4 = str.slice(-2,5); //""
        var sliceStr5 = str.slice(-2,-5); //""
        var sliceStr6 = str.slice(2,-5); //llohappyworldH
        console.log(sliceStr1);
        console.log(sliceStr2);
        console.log(sliceStr3);
        console.log(sliceStr4);
        console.log(sliceStr5);
        console.log(sliceStr6);

        //2.substr(numStart,length) 返回的是从指定位置截取,length长度的字符串,numStart必填,为正整数时,表示从左向右读取下标截取,当为负整数时,表示从右至左读取下标截取,第二个参数表示需要截取字符串的长度,当为负整数时,返回的为空,整数数时表示截取的长度,当超过字符串的剩余长度时,到字符串末尾为止
        var substrStr1 = str.substr(2); //llohappyworldHello!
        var substrStr2 = str.substr(-2); //o!
        var substrStr3 = str.substr(2,18); //llohappyworldHello
        var substrStr4 = str.substr(-2,1); //o
        var substrStr5 = str.substr(-2,-1); //""
        console.log(substrStr1);
        console.log(substrStr2);
        console.log(substrStr3);
        console.log(substrStr4);
        console.log(substrStr5);

        //3、substring(numStart,numEnd) 与slice类似,但是第一个参数为负整数时,截取的为整个字符串
        var substringStr1 = str.substring(2); //llohappyworldHello!
        var substringStr2 = str.substring(-2);//HellohappyworldHello!
        var substringStr3 = str.substring(7,2); //lloha
        var substringStr4 = str.substring(2,7); //lloha
        console.log(substringStr1);
        console.log(substringStr2);
        console.log(substringStr3);
        console.log(substringStr4);

        //4、match方法 注意1、match方法返回的是一个含有匹配项字符串的数组;2、需要根据不同的情况来写正则;3、返回的数组里面第一个总是原来的字符串;4、当正则表示式有子表示时(即(\S*)括号内的内容),且为全局匹配时只查找全匹配正则表达式并返回所有内容,为非全局时,返回的是多个元素数组;当正则表达式无子表达式时,且为全局匹配时,返回的是多个元素的数组,如果为非全局匹配时,返回的是匹配到第一个元素的数组
        var regStr1 = str.match(/Hello/g);  //["Hello","Hello"]
        var regStr9 = str.match(/Hello/);  //["Hello"]
        var regStr2 = str.match(/hello/g); //null
        var regStr3 = str.match(/Hello(\S*)world/); //["Hellohappyworld", "happy"] //截取中间字符串
        var regStr4 = str.match(/(\S*)world/g); //["Hellohappyworld"] //截取指定字符之前的字符串
        var regStr5 = str.match(/(\S*)world/); //["Hellohappyworld", "Hellohappy"] //截取指定字符之前的字符串
        var regStr6 = str.match(/Hello(\S*)/g); //["HellohappyworldHello!"] //截取指定字符之后的字符串
        var regStr7 = str.match(/Hello(\S*)/); //["HellohappyworldHello!", happyworld!] //截取指定字符之后的字符串
        var regStr8 = str.match(/llo(\S*)/); //["llohappyworldHello!", happyworldHello!] //截取指定字符的字符串
        console.log(regStr1);
        console.log(regStr9);
        console.log(regStr2);
        console.log(regStr3);
        console.log(regStr4);
        console.log(regStr5);
        console.log(regStr6);
        console.log(regStr7);
        console.log(regStr8);
    </script>

当然上面这些方法与使用方式都是一些简单的需求,当项目中的需求比较复杂时还得结合实际情况来进行截取,不过不管怎样使用的方法or实现思路都大概类似,另外也鞭策一下自己好记性不如烂笔头,碰到什么问题or新知识还是要养成记录下来的习惯,希望与诸位园友共勉。

补充:js中常遇到 切割截取字符串的几种方法

切割截取字符串的几种方法

1、 split() 方法用于把一个 字符串 分割成 字符串数组 ;

 stringObject.split(str,length)
var str = "123,456,789";
console.log(str.split(''));  // ["1", "2", "3", ",", "4", "5", "6", ",", "7", "8", "9"]
console.log(str.split(',')); // ["123", "456", "789"] 
参数 描述
str 必需。字符串或正则表达式,从该参数指定的地方分割 stringObject
length 可选。如果没有设置该参数,整个字符串都会被分割,不考虑它的长度

注意:如果把空字符串 ("") 用作 str,那么 stringObject 中的每个字符之间都会被分割。

2、 slice() 可提取字符串的某个部分,并以新的字符串返回被提取的部分;

第一个参数必填,第二个参数选填; 注意:如果该参数为负数, 则它表示在原数组中的倒数第几个元素结束抽取

如图所示:[1,2,3,4].slice(0, 3) 0代表开始选取的位置 start,3代表结束位置

var str = "123,456,789";
console.log(str.slice(2,6));	 // 3,45
console.log(str.slice(-6,-2));   // 56,7
console.log(str.slice(2)); 		 // 3,456,789
console.log(str.slice(-6)); 	 // 56,789 

3、substring() 提取字符串中介于两个指定下标之间的字符
语法:string.substring(from, to);from必选而且非负的整数,to可选非负的整数 但是to的值必须比from大位置多1个;

var str = "123,456,789";
console.log(str.substring(2,6)); 	// 3,45
console.log(str.substring(2)); 		// 3,456,789
console.log(str.substring(6,2)); 	// 3,45
console.log(str.substring(-6,-2));  //
console.log(str.substring(6,6)); 	//  

4、join() 把数组中的所有元素转换一个字符串

var str = [123,456,789];
console.log(str.join('')); // 123456789
console.log(str.join(',')); // 123,456,789

5、 charAt() 返回指定位置的字符

string.charAt(index)

index:必需。表示字符串中某个位置的数字,即字符在字符串中的位置。

***:自己开发中常遇到,就当一个笔记,记不住打开看看例子就明白;

到此这篇关于JS常用的4种截取字符串方法的文章就介绍到这了,更多相关js截取字符串方法内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

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

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

  • 详解JS截取字符串的三个方法substring,substr,slice

    目录 相同点 不同点 substring 语法 参数 说明 substr 语法 参数 说明 slice 语法 参数 说明 总结一下 js中有三个截取字符的方法,分别是substring().substr().slice(),平时我们可能都用到过,但总是会对这些方法有点混淆,特别是substring()和substr(),连方法名都差不多,下面就具体来看一下区别. 相同点 这三个方法都可以对字符串进行截取,并且返回一个新的字符串,也就是不会对原字符串进行修改 . 这里 > 表示控制台输入,< 表

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

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

  • 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最实用string(字符串)类型的使用及截取与拼接详解

    var a = '世界上最远的距离不是天涯海角'; 一.通过字符获取位置或通过位置获取字符: //指定位置返回字符 console.log(str.charAt(1)); console.log(str[1]); //指定位置返回字符编码 console.log(str.charCodeAt(1)); //返回字符串位置 console.log(str.indexOf("o"));//不存在返回-1 console.log(str.lastIndexOf("o"))

  • Oracle截取JSON字符串内容的方法

    Oracle截取JSON字符串内容 ,具体代码如下所示: CREATE OR REPLACE FUNCTION PLATFROM.parsejsonstr(p_jsonstr varchar2,startkey varchar2,endkey varchar2) RETURN VARCHAR2 IS rtnVal VARCHAR2(1000); FindIdxS NUMBER(2); FindIdxE NUMBER(2); BEGIN if endkey='}' then rtnVal:=sub

  • js中常见切割截取字符串的几种方法小结

    目录 1. split() 方法用于把一个 字符串 分割成 字符串数组 : 2. slice() 可提取字符串的某个部分,并以新的字符串返回被提取的部分: 3.substring() 提取字符串中介于两个指定下标之间的字符 4.join() 把数组中的所有元素转换一个字符串 5. charAt() 返回指定位置的字符 总结 切割截取字符串的几种方法 1. split() 方法用于把一个 字符串 分割成 字符串数组 : stringObject.split(str,length) var str

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

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

  • JS常用的4种截取字符串方法

    目录 JS常用的4种截取字符串方法 补充:js中常遇到 切割截取字符串的几种方法 切割截取字符串的几种方法 JS常用的4种截取字符串方法 平常经常把这几个api的参数记混了,于是打算记录下来,当不确定的时候在拿出来翻翻: 在做项目的时候,经常会需要截取字符串,所以常用的方法有slice().substr().substring().match()方法等,四个方法的使用如下所示: <script type="text/javascript"> // 截取字符串的方法 //注意

  • 详解C++ string常用截取字符串方法

    string常用截取字符串方法有很多,但是配合使用以下两种,基本都能满足要求: find(string strSub, npos); find_last_of(string strSub, npos); 其中strSub是需要寻找的子字符串,npos为查找起始位置.找到返回子字符串首次出现的位置,否则返回-1: 注: (1)find_last_of的npos为从末尾开始寻找的位置. (2)下文中用到的strsub(npos,size)函数,其中npos为开始位置,size为截取大小 例1:直接查

  • JS常用的几种数组遍历方式以及性能分析对比实例详解

    本文实例讲述了JS常用的几种数组遍历方式以及性能分析对比.分享给大家供大家参考,具体如下: 前言 这一篇与上一篇 JS几种变量交换方式以及性能分析对比 属于同一个系列,本文继续分析JS中几种常用的数组遍历方式以及各自的性能对比 起由 在上一次分析了JS几种常用变量交换方式以及各自性能后,觉得这种方式挺好的,于是抽取了核心逻辑,封装成了模板,打算拓展成一个系列,本文则是系列中的第二篇,JS数组遍历方式的分析对比 JS数组遍历的几种方式 JS数组遍历,基本就是for,forin,foreach,fo

  • JS中的四种数据类型判断方法

    目录 1.typeof 2.instanceof 3.constructor 4.toString() 本文总结了四种判断方法: 1.typeof typeof是一个运算符,其有两种使用方式:(1)typeof(表达式); (2)typeof 变量名;返回值是一个字符串,用来说明变量的数据类型;所以可以用此来判断number, string, object, boolean, function, undefined, symbol 这七种类型,每种情况返回的内容如下表所示: // 字符串 con

  • C#几种截取字符串的方法小结

    1.根据单个分隔字符用split截取 例如 复制代码 代码如下: string st="GT123_1"; string[] sArray=st.split("_"); 即可得到sArray[0]="GT123",sArray[1]="1"; 2.利用多个字符来分隔字符串 例如 复制代码 代码如下: string str = "GTAZB_JiangjBen_123";string[] sArray = s

  • iOS 截取字符串中两个指定字符串中间的字符串方法

    例如,要截取一个字符串中,两个指定字符串中间的字符串,OC截取方法如下: // 要截取 "> 和 </ 之间的汉字内容: @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; NSString *string = @"<a href=\"http\">这是要截取的内容</a>"; NSRange startRange = [st

  • Joomla框架实现字符串截取的方法示例

    本文实例讲述了Joomla框架实现字符串截取的方法.分享给大家供大家参考,具体如下: 在用joomla进行开发的时候,需要用到国外的资源,一些module,组件,插件之类的,但是我们会发现,在字符串这个方法都需要进行修改.因为PHP的substr方法只是针对于非中文字符串有效,所以要使用另外一种简便容易的方法mb_substr,这样就能轻松解决截取字符的问题. 同时如果需要针对中文,英文,中英文混合排列三种方式(标点符号除外)进行截取字符串,那么正则表达式就派上用场了,附上源码,仅供参考. /*

  • 【C#基础】Substring截取字符串的方法小结(推荐)

    前言 在公司的图书馆项目中曾经用过截取字符串的方法,项目是java语言的:最近在公司的另一个项目中又需要截取字符串,一种环境是C#语言,一种环境是SQL Server存储过程:先来说一下后台程序中截取字符串的方法. 正文 c#中截取字符串主要是借助Substring 这个函数. string string.Substring(int startIndex,int length); 说明: 如果传入的参数为两个长整参数,第一个参数指子字符串的起始位置,也就是开始截取的位置,第二个参数指截取的长度.

  • java中如何截取字符串最后一位

    目录 截取字符串最后一位 1.用substring()来截取 2.用split()来截取 3.对在Windows下的目录进行截取最后一位 4.对linux下的目录进行截取最后一位 截取字符串的常见方法 常用方法 常用方法介绍和应用示例 截取字符串最后一位 1.用substring()来截取 理论上它是按照字符串.substring(字符串.lastIndexOf("\\")+1)这个格式来的,但是在涉及到特殊符号时需要用\\来转义,所以注意下. 例子: public class Tes

随机推荐