import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
final String regex = "(?:Wertmindernde Faktoren|Gebrauchsspuren.*)\\n(.*(?:\\n.+)*)";
final String string = "Vordersitze beheizbar\n"
+ "Vordersitze elektrisch einstellbar, Fahrersitz mit Memory, Komforteinstieg, längs verschiebbarer\n"
+ "Oberschenkelauflage\n"
+ "Wegfahrsperre elektronisch\n\n"
+ "20.07.2021 Gutachtennummer: XXXXXXX Seite 6 / 17TÜV SÜD Auto Plus GmbH Fahrzeugbewertung\n"
+ " Wiesenring 2\n"
+ " 04159 Leipzig\n"
+ " +XXXXXXXXXXXX\n"
+ "GUTACHTENNUMMER: XXXXXX\n"
+ "Bei Rückfragen bitte Gutachtennummer und Datum angeben Datum: 20.07.2021\n\n"
+ "Ausstattung\n"
+ "Zentralverriegelung ohne Safe-Sicherung,mit Funkfernbedienung, 2 Funkschlüssel, Komfortstartfunktion\n"
+ "\"Press & Drive\"\n\n"
+ "Wertmindernde Faktoren\n"
+ "Nr. Bauteilgruppe Beschreibung\n"
+ "1 Heckklappe/-tür Heckklappe - Dellen - sanft instandsetzen\n\n"
+ "Gebrauchsspuren\n"
+ "Nr. Bauteilgruppe Beschreibung\n"
+ "1 Stossfänger vorn Spoiler (Unterhalb) - Kratzer - kein Abzug\n"
+ "2 Stossfänger hinten Stossfänger hinten - Kratzer - kein Abzug\n"
+ "3 Tür hinten rechts Tür - Dellen - kein Abzug\n"
+ "4 Tür vorn rechts Tür - Dellen - kein Abzug\n\n"
+ "Vorschaden\n"
+ "Nr. Vorschaden Schadenshöhe\n"
+ "1 fachgerecht repariert , Reparaturrechnung nicht vorhanden 311,10 €\n"
+ "2 fachgerecht repariert , Reparaturrechnung nicht vorhanden 493,31 €\n"
+ "3 Seite links, fachgerecht repariert , Reparaturrechnung nicht vorhanden\n\n"
+ "Summe (netto): 804,41 €\n\n"
+ "Nachlackierungen\n"
+ "Nr. Ort\n"
+ "1 Tür vorne links, fachgerecht ausgeführt\n\n"
+ "Hinweise zum Gutachten\n"
+ "Angaben zum Auftrag und zum Begutachtungsumfang:\n"
+ "Es wurde der Auftrag erteilt, eine Fahrzeugbewertung über das beschriebene Fahrzeug zu erstellen.";
final Pattern pattern = Pattern.compile(regex, Pattern.MULTILINE);
final Matcher matcher = pattern.matcher(string);
while (matcher.find()) {
System.out.println("Full match: " + matcher.group(0));
for (int i = 1; i <= matcher.groupCount(); i++) {
System.out.println("Group " + i + ": " + matcher.group(i));
}
}
}
}
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Java, please visit: https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html