Datum in String finden mit Regulären Ausdrücken in ABAP

Code Snippet um mit ABAP und Regulären Ausdrücken ein Datum in einem String zu finden. Eingabe ist lv_text, Ausgabe via write.

Like it? Share it!
DATA lv_text TYPE string. DATA lv_datum TYPE string. DATA lv_pattern TYPE string. DATA lt_result_tab TYPE match_result_tab. DATA ls_submatch_result_tab TYPE match_result. * Eingabe - Beispieltext. lv_text = 'Bestelldatum : 17.03.2013. Bezahlen Sie bis 21.4.2013, 1.05.2013 oder 2013.05.14 und es gibt jeweils 6%, 3% oder 1% Rabatt.'. * RegEx Patter für Datum lv_pattern = '(d{1,2}[.|/]d{1,2}[.|/]d{4})|(d{4}[.|/]d{1,2}[.|/]d{1,2})'. FIND ALL OCCURRENCES OF REGEX lv_pattern IN lv_text RESULTS lt_result_tab. * Jedes Datum einzeln ausgeben... LOOP AT lt_result_tab INTO ls_submatch_result_tab. lv_datum = lv_text+ls_submatch_result_tab-offset(ls_submatch_result_tab-length). * Ausgabe vom Datum. WRITE: lv_datum. ENDLOOP.

>_ Author

>_ last updated 4 yearss ago

>_ Language: ABAP

Datum