Einführung
In diesem Lab werden wir lernen, wie wir Substrings in einem String mithilfe der Java-Programmiersprache ersetzen. Wir werden verschiedene Methoden in Java verwenden, um einzelne/mehrere Zeichen oder Substrings zu ersetzen. Am Ende werden wir eine klare Vorstellung davon haben, wie diese Methoden in Java-Code implementiert werden.
Erstelle eine Java-Datei
Lassen Sie uns eine Java-Datei erstellen, um den Code zu schreiben und auszuführen. Öffnen Sie das Terminal und navigieren Sie zum Projektverzeichnis. Erstellen Sie eine neue Datei mit dem Namen SubstringReplace.java mit dem folgenden Befehl:
touch SubstringReplace.java
Öffnen Sie die Datei in Ihrem bevorzugten Texteditor.
Das Ersetzen einzelner Zeichen
Wir können die replace()-Methode verwenden, um ein einzelnes Vorkommen eines Zeichens in einem String zu ersetzen. Hier ist ein Beispiel:
public class SubstringReplace {
public static void main(String[] args) {
String originalString = "hello world!";
System.out.println("Original String: " + originalString);
// Replacing a single character
String newString = originalString.replace('l', 'L');
System.out.println("New String: " + newString);
}
}
Im obigen Beispiel ersetzen wir das Kleinbuchstaben-l-Zeichen durch ein Großbuchstaben-L-Zeichen im ursprünglichen String.
Um den Code zu kompilieren und auszuführen, verwenden Sie die folgenden Befehle:
javac SubstringReplace.java
java SubstringReplace
Dies sollte die folgende Ausgabe erzeugen:
Original String: hello world!
New String: heLLo worLd!
Das Ersetzen von Substrings
Wir können die replace()-Methode verwenden, um alle Vorkommen eines Substrings durch ein neues Substring zu ersetzen. Hier ist ein Beispiel:
public class SubstringReplace {
public static void main(String[] args) {
String originalString = "the quick brown fox jumps over the lazy dog";
System.out.println("Original String: " + originalString);
// Replacing a substring
String newString = originalString.replace("the", "a");
System.out.println("New String: " + newString);
}
}
Im obigen Beispiel ersetzen wir alle Vorkommen des Substrings "the" durch das Substring "a".
Um den Code zu kompilieren und auszuführen, verwenden Sie die gleichen Befehle wie in Schritt 2.
Dies sollte die folgende Ausgabe erzeugen:
Original String: the quick brown fox jumps over the lazy dog
New String: a quick brown fox jumps over a lazy dog
Das Ersetzen der ersten Vorkommen eines Substrings
Wir können die replaceFirst()-Methode verwenden, um das erste Vorkommen eines Substrings durch ein neues Substring zu ersetzen. Hier ist ein Beispiel:
public class SubstringReplace {
public static void main(String[] args) {
String originalString = "the quick brown fox jumps over the lazy dog";
System.out.println("Original String: " + originalString);
// Replacing the first occurrence of a substring
String newString = originalString.replaceFirst("the", "a");
System.out.println("New String: " + newString);
}
}
Im obigen Beispiel ersetzen wir das erste Vorkommen des Substrings "the" durch das Substring "a".
Um den Code zu kompilieren und auszuführen, verwenden Sie die gleichen Befehle wie in Schritt 2.
Dies sollte die folgende Ausgabe erzeugen:
Original String: the quick brown fox jumps over the lazy dog
New String: a quick brown fox jumps over the lazy dog
Zeichen mit regulären Ausdrücken ersetzen
Wir können reguläre Ausdrücke verwenden, um ein Zeichen mit einem Muster zu ersetzen. Hier ist ein Beispiel:
public class SubstringReplace {
public static void main(String[] args) {
String originalString = "the quick brown fox jumps over the lazy dog";
System.out.println("Original String: " + originalString);
// Replacing characters with regular expressions
String newString = originalString.replaceAll("[aeiou]", "");
System.out.println("New String: " + newString);
}
}
Im obigen Beispiel entfernen wir alle Vokale aus dem ursprünglichen String mit einem regulären Ausdruck.
Um den Code zu kompilieren und auszuführen, verwenden Sie die gleichen Befehle wie in Schritt 2.
Dies sollte die folgende Ausgabe erzeugen:
Original String: the quick brown fox jumps over the lazy dog
New String: th qck brwn fx jmps vr th lzy dg
Mehrere Zeichen mit regulären Ausdrücken ersetzen
Wir können reguläre Ausdrücke verwenden, um mehrere Zeichen mit einem Muster zu ersetzen. Hier ist ein Beispiel:
public class SubstringReplace {
public static void main(String[] args) {
String originalString = "the quick brown fox jumps over the lazy dog";
System.out.println("Original String: " + originalString);
// Replacing multiple characters with regular expressions
String newString = originalString.replaceAll("[aeiouAEIOU]", "");
System.out.println("New String: " + newString);
}
}
Im obigen Beispiel entfernen wir alle Vokale (Klein- und Großbuchstaben) aus dem ursprünglichen String mit einem regulären Ausdruck.
Um den Code zu kompilieren und auszuführen, verwenden Sie die gleichen Befehle wie in Schritt 2.
Dies sollte die folgende Ausgabe erzeugen:
Original String: the quick brown fox jumps over the lazy dog
New String: th qck brwn fx jmps vr th lzy dg
Substrings mit regulären Ausdrücken ersetzen
Wir können reguläre Ausdrücke verwenden, um ein Substring mit einem Muster zu ersetzen. Hier ist ein Beispiel:
public class SubstringReplace {
public static void main(String[] args) {
String originalString = "the quick brown fox jumps over the lazy dog";
System.out.println("Original String: " + originalString);
// Replacing substrings with regular expressions
String newString = originalString.replaceAll("\\w+", "a");
System.out.println("New String: " + newString);
}
}
Im obigen Beispiel ersetzen wir alle Wörter im ursprünglichen String mit dem Buchstaben a mit einem regulären Ausdruck.
Um den Code zu kompilieren und auszuführen, verwenden Sie die gleichen Befehle wie in Schritt 2.
Dies sollte die folgende Ausgabe erzeugen:
Original String: the quick brown fox jumps over the lazy dog
New String: a a a a a a a a a
Mehrere Vorkommen eines Substrings mit regulären Ausdrücken ersetzen
Wir können reguläre Ausdrücke verwenden, um alle Vorkommen eines Substrings mit einem Muster zu ersetzen. Hier ist ein Beispiel:
public class SubstringReplace {
public static void main(String[] args) {
String originalString = "the quick brown fox jumps over the lazy dog";
System.out.println("Original String: " + originalString);
// Replacing all occurrences of a substring with regular expressions
String newString = originalString.replaceAll("the", "a");
System.out.println("New String: " + newString);
}
}
Im obigen Beispiel ersetzen wir alle Vorkommen des Substrings "the" mit dem Buchstaben a mit einem regulären Ausdruck.
Um den Code zu kompilieren und auszuführen, verwenden Sie die gleichen Befehle wie in Schritt 2.
Dies sollte die folgende Ausgabe erzeugen:
Original String: the quick brown fox jumps over the lazy dog
New String: a quick brown fox jumps over a lazy dog
Verwendung von StringBuilder zum Ersetzen von Substrings
Wir können die StringBuilder-Klasse verwenden, um Substrings auf effizientere Weise zu ersetzen. Hier ist ein Beispiel:
public class SubstringReplace {
public static void main(String[] args) {
String originalString = "the quick brown fox jumps over the lazy dog";
System.out.println("Original String: " + originalString);
// Using StringBuilder to replace substrings
StringBuilder stringBuilder = new StringBuilder(originalString);
stringBuilder.replace(0, 3, "a");
String newString = stringBuilder.toString();
System.out.println("New String: " + newString);
}
}
Im obigen Beispiel verwenden wir die StringBuilder-Klasse, um die ersten 3 Zeichen im String mit dem Buchstaben a zu ersetzen.
Um den Code zu kompilieren und auszuführen, verwenden Sie die gleichen Befehle wie in Schritt 2.
Dies sollte die folgende Ausgabe erzeugen:
Original String: the quick brown fox jumps over the lazy dog
New String: a quick brown fox jumps over the lazy dog
Verwendung von StringBuffer zum Ersetzen von Substrings
Ähnlich wie StringBuilder können wir die StringBuffer-Klasse verwenden, um Substrings auf effizientere Weise zu ersetzen. Der einzige Unterschied ist, dass StringBuffer Thread-sicher ist. Hier ist ein Beispiel:
public class SubstringReplace {
public static void main(String[] args) {
String originalString = "the quick brown fox jumps over the lazy dog";
System.out.println("Original String: " + originalString);
// Using StringBuffer to replace substrings
StringBuffer stringBuffer = new StringBuffer(originalString);
stringBuffer.replace(0, 3, "a");
String newString = stringBuffer.toString();
System.out.println("New String: " + newString);
}
}
Im obigen Beispiel verwenden wir die StringBuffer-Klasse, um die ersten 3 Zeichen im String mit dem Buchstaben a zu ersetzen.
Um den Code zu kompilieren und auszuführen, verwenden Sie die gleichen Befehle wie in Schritt 2.
Dies sollte die folgende Ausgabe erzeugen:
Original String: the quick brown fox jumps over the lazy dog
New String: a quick brown fox jumps over the lazy dog
Zusammenfassung
In diesem Lab haben wir gelernt, wie man Substrings in einem String mithilfe der Java-Programmiersprache ersetzt. Wir haben mehrere Methoden in Java diskutiert, um einzelne/mehrere Zeichen oder Substrings zu ersetzen. Wir haben auch gelernt, wie man reguläre Ausdrücke und die StringBuilder-/StringBuffer-Klassen für effizientere Substring-Ersetzungen verwendet. Mit diesem Wissen können Sie Strings in Ihren Java-Programmen leicht manipulieren.



