1

を使用body.replace(/\r?\n((?!\r?\n)|(?=\r?\n\r?\n\r?\n))/g,'')して改行を置き換えていますが、問題はそれらをすべて削除することです.2つ以上の改行が次々にある場合、それは段落を表しているのでそれらを保持したい.

例えば ​​:

お金はティーンエイジャーにストレスを感じさせます。
彼らは自分自身について気分が悪く、他の人をうらやましく思います。 たとえば、私の友人は家族と一緒に住んでいて、とてもかわいくて知的な
妹と部屋を共有しなければなりません。

この女の子は、自分の部屋とたくさんのものを持ちたいと思っていますが
、家族があまりお金を持っていないので、これらのものを持つことができません.
彼女の家の収入は、父親が高齢で仕事に行っていないため、かなり低収入です。

私はそれが次のようになりたい:

お金はティーンエイジャーにストレスを感じさせます。彼らは自分自身について気分が悪く、他の人をうらやましく思います。たとえば、私の友人は家族と一緒に住んでいて、とてもかわいくて知的な妹と部屋を共有しなければなりません。

この女の子は、自分の部屋とたくさんのものを持ちたいと思っていますが、家族があまりお金を持っていないので、これらのものを持つことができません. 彼女の家の収入は、父親が高齢で仕事に行っていないため、かなり低収入です。

前もって感謝します。

4

2 に答える 2

3

このような複雑な正規表現は必要ありません。これらのルックアラウンドは実際には必要ありません。

これを簡単に使用できます:

body.replace(/(\r|\n|\r\n){1,}/g,'$1');

$1後方参照です。\1正規表現エンジンで使用されている場合は、に置き換えてください。

于 2013-07-08T16:32:51.810 に答える