Try this:
text.replace(/
s*
/g, '
');
This basically looks for two line breaks with only whitespace in between. And then it replaces those by a single line break. Due to the global flag g
, this is repeated for every possible match.
edit:
is it possibile to leave a double line break instead of a single
Sure, simplest way would be to just look for three line breaks and replace them by two:
text.replace(/
s*
s*
/g, '
');
If you want to maintain the whitespace on one of the lines (for whatever reason), you could also do it like this:
text.replace(/(
s*?
)s*
/, '$1');
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…