Einführung
In diesem Artikel lernen Sie verschiedene Möglichkeiten kennen, wie Sie ein Zeichen aus einem String
-Objekt in Java entfernen können. Obwohl die Klasse String
keine Methode remove()
hat, können Sie Varianten der Methoden replace()
und substring()
verwenden, um Zeichen aus Zeichenketten zu entfernen.
Hinweis: String
-Objekte sind unveränderlich, was bedeutet, dass sie nach ihrer Erstellung nicht geändert werden können. Alle in diesem Artikel beschriebenen Methoden der Klasse String
geben ein neues String
-Objekt zurück und ändern das Originalobjekt nicht. Die Art der Zeichenkette, die Sie verwenden, hängt von den Anforderungen Ihres Programms ab. Erfahren Sie mehr über andere Arten von Zeichenkettenklassen und warum Zeichenketten in Java unveränderlich sind.
Die Klasse String
verfügt über die folgenden Methoden, die Sie zum Ersetzen oder Entfernen von Zeichen verwenden können:
replace(char oldChar, char newChar)
: Gibt ein neuesString
-Objekt zurück, das alle Vorkommen vonoldChar
in der angegebenen Zeichenkette durchnewChar
ersetzt. Sie können auch die Methodereplace()
im Formatreplace(CharSequence target, CharSequence replacement)
verwenden, um ein neuesString
-Objekt zurückzugeben, das eine Teilzeichenkette in der angegebenen Zeichenkette ersetzt.replaceFirst(String regex, String replacement)
: Gibt ein neuesString
-Objekt zurück, das den ersten Substring ersetzt, der dem regulären Ausdruck in dem gegebenen String entspricht, durch den Ersatz.replaceAll(String regex, String replacement)
: Gibt ein neuesString
-Objekt zurück, das jeden Substring ersetzt, der dem regulären Ausdruck in dem gegebenen String entspricht, durch den Ersatz.substring(int start, int end)
: Gibt ein neuesString
-Objekt zurück, das eine Teilfolge von Zeichen enthält, die derzeit in dieser Sequenz enthalten sind. Die Teilfolge beginnt bei dem angegebenen Start und erstreckt sich bis zum Zeichen am Index end minus 1.
Beachten Sie, dass das erste Argument für die Methoden replaceAll()
und replaceFirst()
ein regulärer Ausdruck ist. Sie können einen regulären Ausdruck verwenden, um ein Muster aus einem String zu entfernen.
Hinweis: Verwenden Sie doppelte Anführungszeichen, um literalen Zeichenkettenwerte anzugeben, wenn Sie die replace()
-Methoden verwenden. Wenn Sie einfache Anführungszeichen verwenden, nimmt die JRE an, dass Sie eine Zeichenkonstante angeben, und Sie erhalten einen Fehler beim Kompilieren des Programms.
Entfernen Sie ein Zeichen aus einem String in Java
Sie können alle Vorkommen eines Zeichens in einem String in Java entfernen, indem Sie die replace()
-Methode verwenden, um das Zeichen durch einen leeren String zu ersetzen. Das folgende Beispiel entfernt alle Vorkommen des Kleinbuchstabens „a
“ aus dem gegebenen String:
String str = "abc ABC 123 abc";
String strNew = str.replace("a", "");
Outputbc ABC 123 bc
Leerzeichen aus einem String in Java entfernen
Sie können Leerzeichen aus einem String in Java entfernen, indem Sie die replace()
-Methode verwenden, um die Leerzeichen durch einen leeren String zu ersetzen. Das folgende Beispiel entfernt alle Leerzeichen aus dem gegebenen String:
String str = "abc ABC 123 abc";
String strNew = str.replace(" ", "");
OutputabcABC123abc
Einen Teilstring aus einem String in Java entfernen
Sie können nur das erste Vorkommen eines Zeichens oder Teilstrings in einem String in Java entfernen, indem Sie die replaceFirst()
-Methode verwenden, um das Zeichen oder den Teilstring durch einen leeren String zu ersetzen. Das folgende Beispiel entfernt das erste Vorkommen von „ab
“ aus dem gegebenen String:
String str = "abc ABC 123 abc";
String strNew = str.replaceFirst("ab", "");
Outputc ABC 123 abc
Entfernen Sie alle Kleinbuchstaben aus einem String in Java
Sie können einen regulären Ausdruck verwenden, um Zeichen, die einem bestimmten Muster entsprechen, aus einem String in Java zu entfernen, indem Sie die replace.All()
-Methode verwenden, um die Zeichen durch einen leeren String zu ersetzen. Der folgende Beispielcode entfernt alle Kleinbuchstaben aus dem angegebenen String:
String str = "abc ABC 123 abc";
String strNew = str.replaceAll("([a-z])", "");
OutputABC 123
Entfernen Sie das letzte Zeichen aus einem String in Java
Es gibt keine spezifische Methode, um das letzte Zeichen aus einem String zu ersetzen oder zu entfernen, aber Sie können die String substring()-Methode verwenden, um den String zu kürzen. Der folgende Beispielcode entfernt das letzte Zeichen aus dem angegebenen String:
String str = "abc ABC 123 abc";
String strNew = str.substring(0, str.length()-1);
Outputabc ABC 123 ab
Probieren Sie es aus
Die folgende Beispieldatei definiert eine Klasse, die alle im Artikel bereitgestellten Methodenbeispiele enthält, und gibt die Ergebnisse aus, nachdem jede Methode auf den angegebenen String angewendet wurde. Sie können diesen Beispielcode verwenden, um es selbst mit verschiedenen Zeichenketten, unterschiedlichen Übereinstimmungsmustern und Ersatzwerten auszuprobieren.
Wenn Sie Java installiert haben, können Sie eine neue Datei mit dem Namen JavaStringRemove.java
erstellen und den folgenden Code zur Datei hinzufügen:
public class JavaStringRemove {
public static void main(String[] args) {
String str = "abc ABC 123 abc";
// Entfernen Sie ein Zeichen aus einer Zeichenkette in Java
System.out.println("String after removing all the 'a's = "+str.replace("a", ""));
// Entfernen Sie Leerzeichen aus einer Zeichenkette in Java
System.out.println("String after removing all the spaces = "+str.replace(" ", ""));
// Entfernen Sie eine Teilzeichenkette aus einer Zeichenkette in Java
System.out.println("String after removing the first 'ab' substring = "+str.replaceFirst("ab", ""));
// Entfernen Sie alle Kleinbuchstaben aus einer Zeichenkette in Java
System.out.println("String after removing all the lowercase letters = "+str.replaceAll("([a-z])", ""));
// Entfernen Sie das letzte Zeichen aus einer Zeichenkette in Java
System.out.println("String after removing the last character = "+str.substring(0, str.length()-1));
}
}
Kompilieren und starten Sie das Programm:
- javac JavaStringRemove.java
- java JavaStringRemove
Sie erhalten die folgende Ausgabe:
OutputString after removing all the 'a's = bc ABC 123 bc
String after removing all the spaces = abcABC123abc
String after removing the first 'ab' substring = c ABC 123 abc
String after removing all the lowercase letters = ABC 123
String after removing the last character = abc ABC 123 ab
Jede Methode in der Beispielklasse JavaStringRemove
arbeitet mit der angegebenen Zeichenkette. Die Ausgabe zeigt, dass die in jeder Methode angegebenen Zeichen aus der Zeichenkette entfernt wurden.
Fazit
In diesem Artikel haben Sie verschiedene Methoden gelernt, um Zeichen aus Zeichenketten in Java zu entfernen, unter Verwendung von Methoden aus der String
-Klasse, einschließlich replace()
, replaceAll()
, replaceFirst()
und substring()
. Setzen Sie Ihr Lernen mit weiteren Java-Tutorials fort.
Source:
https://www.digitalocean.com/community/tutorials/java-remove-character-string