我有这个regex
剥去额外的空白区域,但问题是它摆脱了回车。
var str = str.replace(/\s{2,}/g, " ")
如何在保留回车的同时摆脱那些空白空间?
谢谢
答案 0 :(得分:3)
也许是这样的:
var str = str.replace(/((?!\r)\s){2,}/g, " ")
或者如果你想保留回车和换行符,这样的东西就可以了:
var str = str.replace(/((?![\r\n])\s){2,}/g, " ")
答案 1 :(得分:2)
明确指定空格字符集:
> '1 \r\n 2 \r\n'.replace(/[ \t\f\v]{2,}/g, ' ')
"1
2
"
答案 2 :(得分:1)
使用此正则表达式仅将多个空格修剪为一个:
str = str.replace(/ {2,}/g, " ");
\s
匹配空格,制表符和换行符。