使用字符串替换将变量传递到正则表达式中

2024-02-16

我在字符串替换中有一个复杂的正则表达式,我想使用一个名为“tagname”的变量而不是“类别”一词,但我不知道该怎么做。

$("textarea").val().replace(/\<Category\>(.*)\<\/Category\>/gi, "<Category>TextVariable</Category>");

我已经尝试过类似的方法,但它在第一个参数中不起作用。

$("textarea").val().replace("/\<" + tagname + "\>(.*)\<\/" + tagname "\>/gi", "<" + tagname + ">" + TextVariable + "</" + tagname + ">");

您可以使用RegExp具有字符串模式和标志的构造函数:

var regex = new RegExp("<" + tagname + ">(.*)</" + tagname + ">", "gi");
$("textarea").val().replace(regex, "<" + tagname + ">" + TextVariable + "</" + tagname + ">");
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用字符串替换将变量传递到正则表达式中 的相关文章

随机推荐