Javascript 删除文本中的空白,同时保留换行符

Javascript 删除文本中的空白,同时保留换行符,javascript,regex,Javascript,Regex,我想清理诗歌文本,以下是示例:(使用codetag更好地查看隐藏字符): მეორდება ისტორია, დღევანდელს ჰგავს გარდასული, რახან ბევრი გვიცხოვრია, ნუთუ დგება დასსარული?! არა! არ თქვა დავბერდითო, ნუ მაჯერებ, რაც არ მჯერა, არ მწამს სიტყვა ავბედითი, რომ ჩამძახონ ათასჯერაც! 我试过: functi

我想清理诗歌文本,以下是示例:(使用
code
tag更好地查看隐藏字符):

მეორდება ისტორია,
დღევანდელს ჰგავს გარდასული, რახან ბევრი გვიცხოვრია, ნუთუ დგება დასსარული?!

არა! არ თქვა დავბერდითო, ნუ მაჯერებ, რაც არ მჯერა, არ მწამს სიტყვა ავბედითი, რომ ჩამძახონ ათასჯერაც!

我试过:

function sanitize(txt)
{
    txt = txt.replace(/\s+\n/g, "\n");
    return txt;
}
它可以工作,但也可以删除段落之间的新行。我只想从每一行的末尾,有时从开头删除额外的空白,并尽可能多地保留新的行

我知道这很容易解决,但我被卡住了


谢谢

\s
匹配空格,包括换行符

txt.replace(/^ +| +$/gm, "");
这将删除一行开头或结尾的一个或多个水平空格(制表符除外)

^[ ]+|[ ]+$
尝试此操作。替换为
空字符串
。请参阅演示

var re = /^[ ]+|[ ]+$/igm;
var str = 'მეორდება ისტორია,\nდღევანდელს ჰგავს გარდასული, რახან ბევრი გვიცხოვრია, ნუთუ დგება დასსარული?! \n\n არა! არ თქვა დავბერდითო, ნუ მაჯერებ, რაც არ მჯერა, არ მწამს სიტყვა ავბედითი, რომ ჩამძახონ ათასჯერაც! ';
var subst = '';

var result = str.replace(re, subst);