2

現在、次の2つの置換のみを使用してDBから取得したメッセージを表示しています。

text = text.replace("\r\n", "<br />");
text = text.replace("\n", "<br />");

しかし、問題は、連続する「\ n」がたくさんある場合、たくさんの
sまたは空白があるので、それらをすべて1つにしたいということです。それで、あなたの提案は何ですか?すべての連続する\n\ n \ n \ n \ n \ n \ nを1つのbrだけにするための簡単な置換方法はありますか?

4

3 に答える 3

6

数量詞を使用+して、1つ以上を表すことができます。また、*0以上を意味します。

text = text.replaceAll("\n+", "<br />");

text = text.replaceAll("[\n\r]+", "<br />");
于 2012-10-05T17:01:53.260 に答える
2

複数のコンテンツがある場合、\r\nまたは\nその間に他のコンテンツがある場合は、

text.replaceAll("(\r\n)+", "<br />")
    .replaceAll("\n+", "<br />");
于 2012-10-05T17:04:48.417 に答える
1

これを試しましたか:

text = text.replace("(\r\n)+", "<br />");
text = text.replace("\n+", "<br />");

前の+一致の「1つ以上」を意味します。

于 2012-10-05T17:02:18.757 に答える