js使用正則match方法對字符串進行精確提取

前言:最近用到了js正則的match方法雖然很簡單但是還是發個文章吧證明我還在,哈哈

業務場景:比如給我們一個字符串讓我們提取中間指定的內容,突然一聽很是頭疼,然後再仔細一想還是挺簡單的,比如indexOf方法,我們可以用indexOf先確定具體的位置然後將其提取,這樣也是沒有什麼毛病的,那有沒有別的方法呢,那就開始今天的重點,今天的主角就是match了。開講~

  • 截取字符串前面的內容
let str = "aaabbbccc";
tr = str.match(/(\S*)ccc/)[1];
console.log(str); //結果aaabbb
  • 截取字符串中間的內容
let str = "aaabbbccc";
str = str.match(/aaa(\S*)ccc/)[1];
console.log(str); //結果bbb

  • 截取字符串後面的內容
let str = "aaabbbccc";
str = str.match(/aaa(\S*)/)[1];
console.log(str); //結果bbbccc

通過match操作的結構結構類似這樣

const str = "aaabbbccc";
str = str.match(/aaa(\S*)/)[1];
console.log(str); //結果bbbccc
// 打印str.match(/aaa(\S*)/)
['aaabbbccc', 'bbbccc', index: 0, input: 'aaabbbcccf', groups: undefined]

使用match如果沒有匹配到內容會返回null 不是數組哦記得做容錯

數組參數說明:

  • 第一個值(這裏指aaabbbccc): 是指整個字符串
  • 第二個值(這裏指bbbccc): 是指匹配到的字符串
  • index: 是指需要匹配的內容的開始位置

生活就是不斷的積累~

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章