Code: Alles auswählen.
^(000|111|222|aaa|AAA|bbb|BBB|ccc|CCC){1,}
Code: Alles auswählen.
^[000-999aaa-zzzAAA-ZZZ]{1,}
Code: Alles auswählen.
^\w{3,}
Code: Alles auswählen.
data start(3) type c.
start = text.
if start+0(1) = start+1(1) and start+0(1) = start+2(1).
Würde bedeuten, ABAP findet per FIND keine mit ( ) registrierte Untergruppen, könnte aber mit Replace solche Untergruppen ersetzen? Kurios.Da in ABAP mit ( ) registrierte Untergruppen nur in Ersetzungsmustern akzeptiert werden
Okay, fast schon zu einfach, aber geht. ;)if start+0(1) = start+1(1) and start+0(1) = start+2(1).
Nein - das heißt es nicht. Mit ( ) kann man Untergruppen registrieren und in Ersetzungmustern ansprechen. Wenn Untergruppen in Suchmustern akzeptiert würden könnte man falls ( ) die 1. Untergruppe ist, mit ^(.)$1{2} ( Untergruppe trifft das 1. Auftreten, $1{2} dann die beiden weiteren, wobei auf die Untergruppe referenziert wird ) oder so ähnlich weitermachen
Folgende Benutzer bedankten sich beim Autor black_adept für den Beitrag:
sapdepp
Code: Alles auswählen.
DATA:
lt_result TYPE match_result_tab,
ld_string TYPE string VALUE 'aaabbcc'.
FIND REGEX '([a-z\d])\1\1' IN ld_string RESULTS lt_result.
Folgende Benutzer bedankten sich beim Autor a-dead-trousers für den Beitrag (Insgesamt 2):
black_adept • sapdepp
Code: Alles auswählen.
^([a-zA-Z\d])\1\1