因此,例如:
function(input){ var testVar = input; string = ... string.replace(/ReGeX + testVar + ReGeX/, "replacement") }
但这当然是行不通的:)有什么办法可以做到这一点?
const regex = new RegExp(`ReGeX${testVar}ReGeX`); ... string.replace(regex, "replacement");
根据一些评论,请务必注意,如果可能存在恶意内容(例如,变量来自用户输入),则可能需要转义该 变量
在2019年,这通常使用模板字符串编写,并且上面的代码已更新。最初的答案是:
var regex = new RegExp("ReGeX" + testVar + "ReGeX"); ... string.replace(regex, "replacement");