javascript 使用.match()查找字符串中出现的字符,接收null而不是匹配字符[重复]

nc1teljy  于 5个月前  发布在  Java
关注(0)|答案(1)|浏览(59)

此问题在此处已有答案

How do you use a variable in a regular expression?(28个回答)
2天前关闭.

const fdChar = (string, char) => {
  let regex = /char/gi; 
  console.log(string.match(regex)); 
}
fdChar('bacon', 'a');

大家好,
新的编码。重新介绍自己的正则表达式。上面的函数只是一个测试,测试什么将被实现到一个更大的代码块中,以应对JavaScript编码挑战。我在控制台中不断收到null。我想在字符串中定位某些字符。我不能在我的regex变量中存储参数值吗?
函数调用fdChar('bacon','a');
预期的控制台输出:'a';
接收的输出:null

34gzjxbg

34gzjxbg1#

尝试

const fdChar = (string, char) => {
     let regex = new RegExp(char, 'gi');
      console.log(string.match(regex));
     }

     fdChar('bacon', 'a');

字符串
以下是所做的更改:
我使用了new RegExp(char,'gi')来代替/char/gi,根据char参数动态创建正则表达式。
正则表达式中的g标志代表全局匹配(即,查找所有匹配而不是在第一个匹配后停止),i标志代表不区分大小写的匹配。

相关问题