Java:
Reguläre Ausdrücke verwenden
Wie geht das:
Die integrierte Unterstützung für regex in Java erfolgt hauptsächlich durch die Klassen Pattern
und Matcher
im Paket java.util.regex
. Hier ist ein einfaches Beispiel, um alle Vorkommen eines Wortes in einem String zu finden und auszudrucken, unabhängig von Groß- und Kleinschreibung:
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class RegexExample {
public static void main(String[] args) {
String text = "Regex ist großartig zum Parsen. Parsen mit regex ist mächtig.";
String wordToFind = "parsen";
Pattern pattern = Pattern.compile(wordToFind, Pattern.CASE_INSENSITIVE);
Matcher matcher = pattern.matcher(text);
while (matcher.find()) {
System.out.println("Gefunden '" + matcher.group() + "' an Position " + matcher.start());
}
}
}
Ausgabe:
Gefunden 'parsen' an Position 16
Gefunden 'Parsen' an Position 31
Für Aufgaben wie das Aufteilen von Strings können Sie die split()
Methode der String
-Klasse mit einem regex verwenden:
public class SplitExample {
public static void main(String[] args) {
String text = "Java,Python,Ruby,JavaScript";
String[] languages = text.split(",");
for (String language : languages) {
System.out.println(language);
}
}
}
Ausgabe:
Java
Python
Ruby
JavaScript
Bei der Arbeit mit regex in Java kann es Fälle geben, in denen eine externe Bibliothek komplexe Aufgaben vereinfachen kann. Eine der beliebten Drittanbieter-Bibliotheken für die Arbeit mit regex in Java ist Apache Commons Lang
. Sie bietet Hilfsprogramme wie StringUtils
, die einige regex-Aufgaben vereinfachen. So nutzen Sie es, um die Übereinstimmungen eines Substrings zu zählen:
import org.apache.commons.lang3.StringUtils;
public class CommonsLangExample {
public static void main(String[] args) {
String text = "Regex macht die Textverarbeitung einfacher. Textverarbeitung mit regex ist effizient.";
String substring = "Textverarbeitung";
int count = StringUtils.countMatches(text, substring);
System.out.println("'" + substring + "' erscheint " + count + " mal.");
}
}
Um Apache Commons Lang zu nutzen, müssen Sie es in Ihr Projekt einbinden. Wenn Sie Maven verwenden, fügen Sie diese Abhängigkeit zu Ihrer pom.xml
hinzu:
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.12.0</version> <!-- Prüfen Sie auf die neueste Version -->
</dependency>
Ausgabe:
'Textverarbeitung' erscheint 2 mal.