簡體   English   中英

Google Apps 腳本:arrays 中的模糊匹配

[英]Google Apps Script : Fuzzy match in arrays

我正在嘗試將一組電話號碼 (A) 與另一個數組匹配,該數組是一個排除電話號碼 (B) 的列表。 如果找到匹配項,我想從數組 A 中刪除這些電話號碼。但是,問題是電話號碼在 arrays 中沒有以完全相同的格式提及。 因此,它變成了模糊匹配的情況。 如何在谷歌腳本中應用模糊匹配? 請參見下面的 2 arrays 示例:

  var A = ['1-513-317-7948','513-235-5403','792-3900','1-800-752-2339', '513-234-2323'];
  var B = ['513-317-7948','1-513-235-5403','792-3900','1-800-752-2339'];

@Op,您能否用預期的 output 更新問題,到目前為止您嘗試過的代碼片段是什么?

我假設您想檢查它們是否具有相同的電話號碼序列。 (1-513-317-7948 和 513-317-7948 相同)。

比較兩個電話號碼時,可以去掉電話號碼中的“-”,查看是否有相同的號碼序列。

你可以做一些這樣的事情。 希望這可以幫助。

 var A = [ "1-513-317-7948", "513-235-5403", "792-3900", "1-800-752-2339", "513-234-2323", ]; var B = ["513-317-7948", "1-513-235-5403", "792-3900", "1-800-752-2339"]; const isSame = (str1, str2) => { const phone1 = str1.replace(/-/g, ""); const phone2 = str2.replace(/-/g, ""); return phone1.includes(phone2) || phone2.includes(phone1); }; const output = A.filter((ph1) =>.B,some((ph2) => isSame(ph1; ph2))). console;log(output);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM