正则表达式删除Javascript中的空格,空行和最后一行换行符

rap*_*dko 2 javascript regex

好的,我正在用正则表达式来度过难关..

这就是我需要的...获取文本文件,删除所有空白行和这些行的开头和结尾处的空格,要删除的空白行还包括文件末尾的空行(a \n在全文的最后)

所以我的脚本是:

quotes.replace(/^\s*[\r\n]/gm, "");
Run Code Online (Sandbox Code Playgroud)

这取代相当不错,但在每行的末尾留下一个空格,并且不会删除最后的换行符.

所以我想用这样的东西:

quotes.replace(/^\s*[\r\n]/gm, "").replace(/^\n$/, "");
Run Code Online (Sandbox Code Playgroud)

第二个"替换"将从整个字符串中删除最后的\n如果存在..但它不起作用..

所以我尝试了这个:

quotes.replace(/^\s*|\s*$|\n\n+/gm, "")
Run Code Online (Sandbox Code Playgroud)

这会删除换行符,但在中间有换行符时连接一些换行符:

这样
1
2
3

4

将返回以下行:

["1","2","34"]

你能帮助我吗?

gym*_*all 8

既然听起来你必须在一个正则表达式中完成所有这一切,试试这个:

quotes.replace(/^(?=\n)$|^\s*|\s*$|\n\n+/gm,"")
Run Code Online (Sandbox Code Playgroud)

我们正在做的是创建一个不会捕获任何内容的组,但是防止换行本身被消耗掉.