Wie man ein Zeichen aus einem String in Java entfernt

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 neues String-Objekt zurück, das alle Vorkommen von oldChar in der angegebenen Zeichenkette durch newChar ersetzt. Sie können auch die Methode replace() im Format replace(CharSequence target, CharSequence replacement) verwenden, um ein neues String-Objekt zurückzugeben, das eine Teilzeichenkette in der angegebenen Zeichenkette ersetzt.
  • replaceFirst(String regex, String replacement): Gibt ein neues String-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 neues String-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 neues String-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", "");
Output
bc 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(" ", "");
Output
abcABC123abc

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", "");
Output
c 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])", "");
Output
ABC 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);
Output
abc 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:

JavaStringRemove.java

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:

  1. javac JavaStringRemove.java
  2. java JavaStringRemove

Sie erhalten die folgende Ausgabe:

Output
String 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