所以我试图匹配一个忽略空格的单词,并且由于没有标记,我不得不在每个字符之间插入\s*,但是即时通讯所遇到的困难是如何动态地执行此操作...这就是我所拥有的尝试过的



 const regArray = ['S','o','m','e','W','o','r','d']
 var index = 1
  regArray.forEach((element) => {
       regArray.splice(index, 0 ,'\s*')
       index = index + 2
  });
  regArray.splice(-1,1)
  const regex = RegExp(regArray.join('')+'.*','i')
  console.log(regex) // Ss*os*ms*es*Ws*os*rs*d.*/i
  // expected S\s*o\s*.....

最佳答案

无需使用空字符串连接\\s*,也无需使用forEachsplice



const regArray = ['S', 'o', 'm', 'e', 'W', 'o', 'r', 'd']
const regex = RegExp(regArray.join('\\s*'), 'i')

console.log(regex) // Ss*os*ms*es*Ws*os*rs*d.*/i
// expected S\s*o\s*.....

09-25 21:00