![](/img/trans.png)
[英]Regex to to detect white spaces, new lines to count words in Javascript
[英]Regex to remove white spaces, blank lines and final line break in Javascript
好的,我正在用正則表達式來度過難關..
這就是我需要的...獲取文本文件,刪除所有空白行和這些行的開頭和結尾處的空格,要刪除的空白行還包括文件末尾的空行(a \\ n在全文的最后)
所以我的腳本是:
quotes.replace(/^\s*[\r\n]/gm, "");
這取代相當不錯,但在每行的末尾留下一個空格,並且不會刪除最后的換行符。
所以我想用這樣的東西:
quotes.replace(/^\s*[\r\n]/gm, "").replace(/^\n$/, "");
第二個“替換”將從整個字符串中刪除最后的\\ n如果存在..但它不起作用..
所以我嘗試了這個:
quotes.replace(/^\s*|\s*$|\n\n+/gm, "")
這會刪除換行符,但在中間有換行符時連接一些換行符:
以便
1
2
3
4
將返回以下行:
[“1”,“2”,“34”]
你能幫助我嗎?
既然聽起來你必須在一個正則表達式中完成所有這一切,試試這個:
quotes.replace(/^(?=\n)$|^\s*|\s*$|\n\n+/gm,"")
我們正在做的是創建一個不會捕獲任何內容的組,但是防止換行本身被消耗掉。
拆分,更換,過濾:
quotes.split('\n')
.map(function(s) { return s.replace(/^\s*|\s*$/g, ""); })
.filter(function(x) { return x; });
輸入值為" hello \\n\\nfoo \\n bar\\nworld \\n"
,輸出為["hello", "foo", "bar", "world"]
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.