我试图创建一个可以替换所有空格的正则表达式,但是可以保留新行吗?
例如:
var text = 'AAAAAAAA'
text += 'AA AA AAA BB B B B B BB B'
text += 'B B';
var text = text.replace(/\s+/g, ' ');
"AAAAAAAAAA AA AAA BB B B B B BB BB B"
输出:
"AAAAAAAAAA AA AAA BB B B B B BB BB B"
我想保留线条。
感谢。
答案 0 :(得分:4)
你可以使用它,
text.replace(/[ \t]+/g, ' ');
或
text.replace(/(?:(?![\r\n])\s)+/g, ' ')
答案 1 :(得分:1)
由于以下字符被视为空格:
\t
- 标签\f
- 表单Feed \r
- 回车\n
- 换行\v
- 垂直标签
- space 您可以使用以下模式完成任务,
/[\t\f\v ]+/g
例如
text.replace(/[\t\f\v ]+/g, " ");