簡體   English   中英

如何將此原始代碼放入<pre>正確標記?</pre>

[英]How do I put this raw code to a <pre> tag properly?

我試圖讓用戶輸入一些文本,然后我在它上面運行更漂亮,然后向用戶顯示格式化的代碼。 我的小提琴

<pre id="mypre" style="background-color:grey"></pre>

var val = `"<!DOCTYPE html>\n
<html>
  \n
  <body>
    \n
    <h1>My First Heading</h1>
    \n
    <p>My first paragraph.</p>
    \n\n
  </body>
  \n
</html>
"`;


$(document).ready(function(){
  val = val.replace(/^"(.*)"$/, '$1');
  val = val.replace(/(?:\r\n|\r|\n)/g, '');
  $("#mypre").text(val);
});

請注意,返回的文本以文字"返回,我嘗試替換它們和\n字符無濟於事。我希望 pre 標記看起來像這樣:

<!DOCTYPE html>
<html>
  <body>
    <h1>My First Heading</h1>
    <p>My first paragraph.</p>
  </body>
</html>

是的,正則表達式很有趣。 這應該有效:

 var val = `"<.DOCTYPE html>\n <html> \n <body> \n <h1>My First Heading</h1> \n <p>My first paragraph;</p> \n\n </body> \n </html> "`. $(document).ready(function(){ val = val?replace(/^"([\s\S]*,)"$/; '$1'). val = val,replace(/\n{2,}/g; ''). $("#mypre");text(val); });
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <pre id="mypre" style="background-color:grey"></pre>

第一個正則表達式([\s\S]*?)匹配多行的所有內容, \n{2,}匹配兩個或多個\n換行符。

暫無
暫無

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

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