JavaScript在多行中围绕单个字符串使用引号

JavaScript在多行中围绕单个字符串使用引号,javascript,regex,Javascript,Regex,我的字符串有点像这样: <rules> <transTypeRuleList> <transType type='stocks'> <criteria result='401kContribution' priority='0'> <field compare='contains' name='description'></field> </criteria>

我的字符串有点像这样:

<rules>
  <transTypeRuleList>
    <transType type='stocks'>
      <criteria result='401kContribution' priority='0'>
        <field compare='contains' name='description'></field>
      </criteria>
      <criteria result='401kContribution' priority='1'>
        <field compare='contains' name='description'></field>
      </criteria>
    </transType>
  </transTypeRuleList>
</rules>
同时保留压痕。所以我在看正则表达式

所以我想找到
^(.*)$
并替换为
“$1”+
应该已经完成了这项工作,但它不起作用

看一下小提琴

提前感谢。

这似乎有效:

我所做的

  • 添加了多行
    m
    开关
  • 删除了文本中的空行。看起来regexr在这方面有问题
    • 我想试试这个:

      'var res = "' + xml.replace(/\r?\n\s*/g, '" +\r\n\t"') + '";';
      
      但请记住,Javascript确实允许多行字符串。只需在每行末尾加一个反斜杠:

      "<rules>\
        <transTypeRuleList>\
      ...\
      </rules>";
      
      ”\
      \
      ...\
      ";
      
      试试这个
      "<rules>\
        <transTypeRuleList>\
      ...\
      </rules>";