Wie kann ich mit Regexp_Substring aus einem beliebig langen String mit einem Trennzeichen das Wort vor dem letzten Trennzeichen extrahieren?

Antwort

Um das Wort vor dem letzten Trennzeichen in einem beliebig langen String mit `REGEXP_SUBSTR` zu extrahieren, kannst du eine reguläre Ausdrucksfunktion verwenden. Hier ist ein Beispiel für Oracle SQL: Angenommen, dein Trennzeichen ist ein Komma (`,`), dann kannst du folgenden regulären Ausdruck verwenden: ```sql SELECT REGEXP_SUBSTR(your_column, '(.*)(,.*)', 1, 1, NULL, 1) AS word_before_last_comma FROM your_table; ``` Erklärung des regulären Ausdrucks: - `(.*)(,.*)`: Dies teilt den String in zwei Gruppen. Die erste Gruppe `(.*)` fängt alles bis zum letzten Komma ein, und die zweite Gruppe `(,.*)` fängt das letzte Komma und alles danach ein. - `1, 1, NULL, 1`: Diese Parameter spezifizieren, dass die erste Gruppe `(.*)` zurückgegeben werden soll, was alles vor dem letzten Komma ist. Falls dein Trennzeichen ein anderes Zeichen ist, ersetze einfach das Komma im regulären Ausdruck durch dein gewünschtes Trennzeichen.

Frage stellen und sofort Antwort erhalten