簡體   English   中英

JavaScript Surround用引號將多行中的單個字符串引起來

[英]JavaScript Surround quotes around a single string in multi lines

我的字符串有點像這樣:

<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>

我需要將其作為字符串粘貼到eclipse中,我知道eclipse可以選擇轉義多行字符串和所有字符串,但這給了我不需要的字符串,例如"\\n \\r"

我理想的字符串應該是雙引號和每行末尾的+ ,有點像這樣。

var res= "<rules>"+
    "<acctTypeRuleList>"+
    "<acctTypetype='stocks'>"+
    "<criteriaresult='individual'priority='0'>"+
    "<fieldcompare='contains'name='accountName'></field>"+
    "</criteria>"+
    "<criteriaresult='individual'priority='1'>"+
    "<fieldcompare='contains'name='accountName'></field>"+
    "</criteria>"+
    "</acctType>"+
    "</acctTypeRuleList>"+
    "<transTypeRuleList>"+
    "<transTypetype='stocks'>"+
    "<criteriaresult='401kContribution'priority='0'>"+
    "<fieldcompare='contains'name='description'></field>"+
    "</criteria>"+
    "<criteriaresult='401kContribution'priority='1'>"+
    "<fieldcompare='contains'name='description'></field>"+
    "</criteria>"+
    "</transType>"+
    "</transTypeRuleList>"+
    "</rules>";

同時保留縮進。 所以我在看正則表達式。

所以我想找到^(.*)$並替換為"$1" +應該可以完成這項工作,但是不起作用。

看看小提琴。

鏈接

提前致謝。

這似乎可行:

http://regexr.com/38ps2

我做了什么

  • 添加了多行m開關
  • 刪除了文本中的空行。 看起來regexr有問題。

我會嘗試這樣做:

'var res = "' + xml.replace(/\r?\n\s*/g, '" +\r\n\t"') + '";';

但是請記住,JavaScript 確實允許多行字符串。 只需在每行末尾加一個反斜杠:

"<rules>\
  <transTypeRuleList>\
...\
</rules>";

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM