В Java 1.4.2 replace () принимает только символы, как я могу получить значение символа \ n и \ r \ n возврата каретки? - PullRequest
1 голос
/ 10 августа 2011

Java 1.4.2 replace() принимает только символы.Как я могу получить значение символа \ n и \ r \ n возврат каретки?

\n = Unix carriage return 
\r\n = Windows carriage return

Ответы [ 4 ]

6 голосов
/ 10 августа 2011

Я подозреваю, что вам придется использовать replaceAll ( 1.4.2 docs ), который вместо этого принимает регулярное выражение, или одну из доступных библиотек bazillion StringUtil, такую ​​как Apache CommonsБиблиотека "lang" .

3 голосов
/ 10 августа 2011

Вам нужно String.replaceAll ();

String ns = s.replaceAll("\\r|\\n", "");

3 голосов
/ 10 августа 2011

Значение char \n просто '\n'.

Нет значения char для \r\n, потому что это два char значения. Вам придется использовать другой метод для замены, если вы хотите заменить это чем-то другим.

0 голосов
/ 10 августа 2011

Используйте этот код:

public class main {
    public static void main(String args[]){
        String g = "hello world\nI am Soumitra\nHow are you doing??\n\r ";
        System.out.print(g);
        String g1 = g.replaceAll("\\n", " ");
        String g2 = g1.replaceAll("\\r", "X");

        System.out.print("---------After Replacement-----\n");
        System.out.print(g2);
    }
}

Это заменит символ новой строки (\ n) и возврат каретки (\ r).

...