javascript - 基于用户输入的 RegEx 的动态构造

标签 javascript regex

<分区>

我试图让用户输入与字符串变量匹配,当我将文字字符串传递给 new RegExp(/\bjavascript/) 时,它起作用了,但我尝试了 new RegExp ('\b' + this.input)new RegExp('/\b' + this.input + '/'); 失败。

这是代码

 var lang = 'javascript'
 let patern =  new RegExp('/\b' + this.input + '/');
 console.log(patern.test('lang'));

在我的类中声明“输入”

最佳答案

删除开头和结尾的斜杠并转义反斜杠:

this.input = "St";

let pattern =  new RegExp('\\b' + this.input, 'i');

console.log(
  "Stack Overflow".match(pattern)
)

关于javascript - 基于用户输入的 RegEx 的动态构造,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52345166/

相关文章:

javascript - 弹出剑道窗口

javascript - react-datepicker,禁用特定日期的问题

javascript - 切换在页面上出现两次的元素

ruby - 查找/替换非转义字符的更有效方法

java - 正则表达式获取两个冒号之间的值,不包括冒号

regex - 提取字符串中嵌入的数字

java - 用 "$"替换时 replaceFirst() 失败

JavaScript - IE 9 XML 文本内容

javascript - AngularJS:AngularJS 渲染模板后如何运行附加代码?

php - PHP中的正则表达式过滤@name或@name.lastname