【发布时间】:2020-03-20 21:26:18
【问题描述】:
我有一个正则表达式,想在里面放一个变量。我该怎么办?
我的代码是这样的:
public regexVariable(vRegex: string, testSentences: Array<any> ) {
const regex = new RegExp('/^.*\b(' + vRegex + ')\b.*$/');
const filterSentece = testSentences.filter(result => {
if (regex.test(result)) {
return result
})
}
【问题讨论】:
-
不要忘记在字符串文字中转义反斜杠并删除前导/尾随正斜杠。
-
警告 正则表达式开头的“.*”可能不是您想要的。由于正则表达式默认情况下是贪婪的,因此它很有可能捕获到很多。因此,如果您遇到任何问题,请尝试使用 '.*?'而不是 '.*' 来获得非贪婪的行为。
标签: javascript regex typescript variables