2022年1月17日 星期一

在 JavaScript 的正規表達式取得比對結果的索引值

 在 JavaScript 的正規表達式取得比對結果的索引值

前言

  在之前的 在 JavaScript 初探正規表達式 簡單的使用正規表達式,但實際用後發現需要知道比對結果的索引值,做了個學習,在此做個紀錄。


內容

  範例如下

const reg = /ab*c/g;
let s = 'xxxabbc,xxxabc';
console.log( s.match(reg) );//["abbc", "abc"]
for( const match of s.matchAll(reg) ){
  console.log(match.index);
}


在上次的範例使用 string.match() 可以得到所以比對的結果,但有的時候會需要知道結果的索引值,所以要透過 string.matchAll() 來取得,這裡回傳的結果不再是 string ,而是一個類別,透果 index 來取得比對的結果的索引值。


參考資料

[ developer.mozilla.org ] String.prototype.matchAll()


相關文章與資料

在 JavaScript 初探正規表達式

沒有留言:

張貼留言