Javascript 将正则表达式放入字符串中

Javascript 将正则表达式放入字符串中,javascript,html,regex,node.js,escaping,Javascript,Html,Regex,Node.js,Escaping,我试图通过将字符串从a写入a.js文件B,使用javascript文件a(用Node.js编写)动态创建一个javascript文件B。我想在javascript文件B中使用正则表达式。这需要我将B的正则表达式函数放在a的字符串中。但是,每当我使用反斜杠(转义字符)时,文件A立即解释正则表达式函数,而不是将其视为字符串 一些代码有助于理解我的问题: var mongodata = "Some String with square and curly brackets ]}{]]},]},}{}{

我试图通过将字符串从a写入a
.js
文件B,使用javascript文件a(用Node.js编写)动态创建一个javascript文件B。我想在javascript文件B中使用正则表达式。这需要我将B的正则表达式函数放在a的字符串中。但是,每当我使用反斜杠(转义字符)时,文件A立即解释正则表达式函数,而不是将其视为字符串

一些代码有助于理解我的问题:

var mongodata = "Some String with square and curly brackets ]}{]]},]},}{}{{}},{[[][,][,";
mongodata = 'var mongodata = ' + mongodata + ';\n function setData(){mongodata = mongodata.replace(/\[ /g,"").replace(/\] \},/g,"</td></tr>").replace(/\] \}/g,"</td></tr>"); document.getElementById("mongodata").innerHTML = mongodata;}';
var mongodata=“一些带有方括号和花括号的字符串]}{]},]}{}{}{},{[[],][,”;
mongodata='var mongodata='+mongodata+';\n函数setData(){mongodata=mongodata.replace(/\[/g,”).replace(/\]\},/g,”).replace(/\]\}/g,”);document.getElementById(“mongodata”).innerHTML=mongodata;};
mongodata
字符串旨在用作动态创建的
.js
文件的内容


我理解这个问题的措辞可能有点混乱。如果需要更多的澄清,请告诉我。

也许我误解了您的问题,但可能将分配给mongodata的字符串放在转义引号中:


var mongodata=“\'Some String with square and curly方括号]}{]},]}{}{},{[][,][,\'”;

也许我误解了您的问题,但可能将分配给mongodata的字符串放在转义引号中:


var mongodata=“\'Some String with square and curly方括号]}{]},]}{}{},{[][,][,\'”;

这个有点像彩票。我也不太明白你的问题

可以转义所有正则表达式特殊字符(.*?[]等)。还可以使用以下方法动态创建正则表达式运算符:

var objRegEx = new RegExp( pattern, modifiers );

就像我说的,彩票…暗中刺杀…

这一个有点像彩票。我也不太明白你的问题

可以转义所有正则表达式特殊字符(.*?[]等)。还可以使用以下方法动态创建正则表达式运算符:

var objRegEx = new RegExp( pattern, modifiers );

就像我说的,彩票…暗中刺杀…

在字符串中,就像
\n
字符一样,所有其他反斜杠表达式都在计算中,因此您必须避开反斜杠。换句话说,编写一个输出RegExp的RegExp。避开反斜杠的正确方法是
\\
,但您可能需要这样做还需要转义其他字符以防止其求值。

在字符串中,就像
\n
字符一样,所有其他反斜杠表达式都在求值,因此必须转义反斜杠。换句话说,编写一个输出RegExp的RegExp。正确的转义反斜杠的方法是
\\\,但您可能还需要转义其他字符,以防止对其求值。

谢谢!非常接近。您实际上需要一组三个反斜杠(`\\`)。但是谢谢你把我推向正确的方向。+1+接受。很高兴能提供帮助,也很抱歉造成误导,我不是RegExp的专家。请随意编辑我的答案!!!谢谢!你非常接近。你实际上需要一组三个反斜杠(`\\`)。但谢谢你把我推向正确的方向。+1+接受。很高兴能提供帮助,并对误导表示抱歉,我不是RegExp的专家。请随意编辑我的答案!!!