Entfernen Sie aufeinanderfolgende Zeilenumbrüche und Tabulatoren vor und nach Java

Nachtrag Mir ist aufgefallen, dass ein Zeichen nicht übereinstimmt Von "^ [\ t \ n] * ([^ \ t \ n] + (. | \ s) * [^ \ t \ n] +) [\ t \ n] * $" " Behoben zu "^ [\ t \ n] * ([^ \ t \ n] * (. | \ s) * [^ \ t \ n] +) [\ t \ n] * $" `. Das erste Plus wurde ein Sternchen.


Ich hasse reguläre Ausdrücke. Der Punkt ist, die Zeilenumbrüche und Tabulatoren anders als vorher und nachher zu belassen. Ich bin wirklich begeistert, also werde ich einen Artikel schreiben.


    public static String trimNewline(String str) {
        String regex = "^[\t\n]*([^\t\n]*(.|\\s)*[^\t\n]+)[\t\n]*$";
        Pattern p = Pattern.compile(regex);
        Matcher m = p.matcher(str);
        if (m.find()) {
            return m.group(1);
        } else { //"Leere Zeichen" und "Zeichenfolgen, die nur aus Tabulatoren und Zeilenumbrüchen bestehen" stimmen nicht überein und kommen hierher
            return "";
        }
    }

Wenn Sie sich reguläre Java-Ausdrücke ansehen

System.out.println(trimNewline("\t\n\t\nhoge\t\n\t\n")); // hoge
System.out.println(trimNewline("\t\n\t\nhoge")); // hoge
System.out.println(trimNewline("hoge\t\n\t\n")); // hoge

Es gibt auch Zeilenumbrüche und Tabulatoren in der Mitte. "\t\n\n\n\t\tho\t\t\nhoge\nge\t\n\t\n" ich auch, image.png

Es wurde nur vorne und hinten sicher entfernt.

Recommended Posts

Entfernen Sie aufeinanderfolgende Zeilenumbrüche und Tabulatoren vor und nach Java
Der Zeilenumbruch des eingegebenen Textes wird in der Ansicht nicht angezeigt
Entfernen Sie aufeinanderfolgende Zeilenumbrüche und Tabulatoren vor und nach Java
Tatsächlich unterscheidet Ruby zwischen Zeilenumbrüchen und Leerzeichen
Beispiel für Codierung und Decodierung in Java
StringBuffer- und StringBuilder-Klasse in Java
Entfernen Sie "Assets" und "Turbolinks" in "Rails6".
Verstehe gleich und hashCode in Java
Hallo Welt in Java und Gradle
Unterschied zwischen final und Immutable in Java
Programmieren Sie PDF-Kopf- und Fußzeilen in Java
Von Java nach C und von C nach Java in Android Studio
Lesen und Schreiben von GZIP-Dateien in Java
Unterschied zwischen int und Integer in Java
Diskriminierung von Enum in Java 7 und höher
[Java] [POI] Erstellen Sie eine Tabelle in Word und beginnen Sie eine neue Zeile in einer Zelle