Java:
Suchen und Ersetzen von Text
How to:
Java macht Textersetzungen ziemlich einfach mit der String
Klasse.
public class TextReplaceBeispiel {
public static void main(String[] args) {
String originalText = "Hier ist der Originale Text. Originale Texte sind gut.";
String ersetzterText = originalText.replace("Originale", "Veränderte");
System.out.println(ersetzterText);
}
}
Erwartete Ausgabe:
Hier ist der Veränderte Text. Veränderte Texte sind gut.
Für komplexere Suchen kann Pattern
und Matcher
genutzt werden – das sind Teile der java.util.regex
Bibliothek:
import java.util.regex.Pattern;
import java.util.regex.Matcher;
public class RegexBeispiel {
public static void main(String[] args) {
String originalText = "Foo123Bar";
Pattern muster = Pattern.compile("\\d+");
Matcher matcher = muster.matcher(originalText);
String ersetzterText = matcher.replaceAll("#");
System.out.println(ersetzterText);
}
}
Erwartete Ausgabe:
Foo###Bar
Deep Dive
Suchen und Ersetzen gibt’s schon ewig - seit den Anfängen des Computings. Der einfache .replace()
ist schnell und effektiv für Direktsubstitutionen. Aber wenn’s um Mustererkennung geht, bringen reguläre Ausdrücke – kurz RegExp – ihre Muskeln ins Spiel.
RegExp kann anfangs verwirrend sein, aber sie sind leistungsstark. Sie ermöglichen detaillierte Suchmuster und Bedingungen. java.util.regex
ist die Standardbibliothek dafür in Java.
Es gibt Alternativen zu java.util.regex
wie Apache’s StringUtils
oder Replacer
aus Google’s Guava-Bibliothek. Diese können einfacher sein oder spezielle Fälle besser handhaben.
Beim Implementieren ist es wichtig, auf Performance zu achten. RegExp kann langsam sein, besonders bei großen Texten. Merke dir: je einfacher das Muster, desto schneller die Suche.