我想爲上下文格式的JavaScript格式化一個解析器。首先,我希望能夠將輸入的JavaScript轉換爲一行JavaScript,然後根據我的要求對代碼進行格式化。這不會刪除所有的輸入或空格:解析器:如何將JavaScript字符串變成一行JavaScript?
txt = $.trim(txt);
txt = txt.replace("\n", "");
如何將文本轉換爲一行?
我想爲上下文格式的JavaScript格式化一個解析器。首先,我希望能夠將輸入的JavaScript轉換爲一行JavaScript,然後根據我的要求對代碼進行格式化。這不會刪除所有的輸入或空格:解析器:如何將JavaScript字符串變成一行JavaScript?
txt = $.trim(txt);
txt = txt.replace("\n", "");
如何將文本轉換爲一行?
使用正則表達式與「全局」標誌設置:
txt.replace(/\n/g, "");
然而,你應該小心在Javascript中刪除換行符。您可能會破壞取決於分號插入的代碼。爲什麼不使用像Esprima這樣的現成解析器?
如果文本來自一些操作系統,它可能有\r\n
行結束,所以它是值得同時去除...
您還應該使用/\r/g
這個替換所有\r
不只是第一一。
var noNewLines = txt.replace(/\r/g, "").replace(/\n/g, "");
您必須非常確定沒有單行註釋並且沒有缺少分號。
下面是一個爲什麼你需要注意單行註釋的例子... http://jsfiddle.net/m7jRz/ – Fenton
用途:
表示任何空格字符的 「貪婪」 G標誌。
var text = txt.replace(/ \ s +/g,'');
希望它可以幫助
增加了一個量詞來解決它。 –
+1。多行字符串也會被銷燬。 – Bergi