您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關JavaScript中截取字符串的方法,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。
JavaScript字符串截取方法有:1、slice方法,字符串的截取都是從左向右;2、substring方法,第一個參數為負整數時,截取的為整個字符串;3、match方法 ,返回的是一個含有匹配項字符串的數組。
一、slice方法:
注意
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開始),第二個參數寫上會截取為空,最后注意第二個參數都不能大于第一個參數,可以與坐標軸類比
6 var sliceStr1 = str.slice(2); //llohappyworldHello! 7 var sliceStr2 = str.slice(2,7); //lloha 8 var sliceStr3 = str.slice(-2); //o! 9 var sliceStr4 = str.slice(-2,5); //"" 10 var sliceStr5 = str.slice(-2,-5); //"" 11 var sliceStr6 = str.slice(2,-5); //llohappyworldH 12 console.log(sliceStr1); 13 console.log(sliceStr2); 14 console.log(sliceStr3); 15 console.log(sliceStr4); 16 console.log(sliceStr5); 17 console.log(sliceStr6); 18 19 //2.substr(numStart,length)
二、substr方法:
返回的是從指定位置截取,length長度的字符串,numStart必填,為正整數時,表示從左向右讀取下標截取,當為負整數時,表示從右至左讀取下標截取,
第二個參數表示需要截取字符串的長度,當為負整數時,返回的為空,整數數時表示截取的長度,當超過字符串的剩余長度時,到字符串末尾為止
20 var substrStr1 = str.substr(2); //llohappyworldHello! 21 var substrStr2 = str.substr(-2); //o! 22 var substrStr3 = str.substr(2,18); //llohappyworldHello 23 var substrStr4 = str.substr(-2,1); //o 24 var substrStr5 = str.substr(-2,-1); //"" 25 console.log(substrStr1); 26 console.log(substrStr2); 27 console.log(substrStr3); 28 console.log(substrStr4); 29 console.log(substrStr5); 30 31 //3、substring(numStart,numEnd)
三、substring方法:
與slice類似,但是第一個參數為負整數時,截取的為整個字符串
32 var substringStr1 = str.substring(2); //llohappyworldHello! 33 var substringStr2 = str.substring(-2);//HellohappyworldHello! 34 var substringStr3 = str.substring(7,2); //lloha 35 var substringStr4 = str.substring(2,7); //lloha 36 console.log(substringStr1); 37 console.log(substringStr2); 38 console.log(substringStr3); 39 console.log(substringStr4);
四、match方法 :
注意
1、match方法返回的是一個含有匹配項字符串的數組;
2、需要根據不同的情況來寫正則;
3、返回的數組里面第一個總是原來的字符串;
4、當正則表示式有子表示時(即(\S*)括號內的內容),且為全局匹配時只查找全匹配正則表達式并返回所有內容,為非全局時,返回的是多個元素數組;
當正則表達式無子表達式時,且為全局匹配時,返回的是多個元素的數組,如果為非全局匹配時,返回的是匹配到第一個元素的數組
42 var regStr1 = str.match(/Hello/g); //["Hello","Hello"] 43 var regStr9 = str.match(/Hello/); //["Hello"] 44 var regStr2 = str.match(/hello/g); //null 45 var regStr3 = str.match(/Hello(\S*)world/); //["Hellohappyworld", "happy"] //截取中間字符串 46 var regStr4 = str.match(/(\S*)world/g); //["Hellohappyworld"] //截取指定字符之前的字符串 47 var regStr5 = str.match(/(\S*)world/); //["Hellohappyworld", "Hellohappy"] //截取指定字符之前的字符串 48 var regStr6 = str.match(/Hello(\S*)/g); //["HellohappyworldHello!"] //截取指定字符之后的字符串 49 var regStr7 = str.match(/Hello(\S*)/); //["HellohappyworldHello!", happyworld!] //截取指定字符之后的字符串 50 var regStr8 = str.match(/llo(\S*)/); //["llohappyworldHello!", happyworldHello!] //截取指定字符的字符串 51 console.log(regStr1); 52 console.log(regStr9); 53 console.log(regStr2); 54 console.log(regStr3); 55 console.log(regStr4); 56 console.log(regStr5); 57 console.log(regStr6); 58 console.log(regStr7); 59 console.log(regStr8); 60 </script>
當然上面這些方法與使用方式都是一些簡單的需求,當項目中的需求比較復雜時還得結合實際情況來進行截取,不過不管怎樣使用的方法or實現思路都大概類似,
另外也鞭策一下自己好記性不如爛筆頭,碰到什么問題or新知識還是要養成記錄下來的習慣,希望與諸位園友共勉。
關于JavaScript中截取字符串的方法就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。