REGEX - Hilfe
Hi,
ich hasse RegEx und ich werde es wohl auch nie wirklich lernen. Es erschließt sich mir einfach nicht. Keine Chance ...
Ich will prüfen, ob ein String folgendem Muster entspricht.
ABC-DEF-*
XXX
3 fixe, vorgegebene Ziffern oder Buchstaben, groß oder klein
YYY
3 fixe, vorgegebene Ziffern oder Buchstaben, groß oder klein
Bindestrich
fix, vorgegebenes Trennzeichen "-"
Der Stern
beliebige Anzahl beliebiger Ziffern oder Buchstaben, groß oder klein
z.B.
XXX = ABC
YYY = DEF
dann
ABC-DEF-17-021 --> match
AB-DEF-17-021 --> no match (erste Gruppe vor dem Bindestrich keine 3 Zeichen)
ABC-DEF-1 --> match
ABC-DEF --> no match (Bindestrich am Ende fehlt, keine nachfolgen Zeichen nach dem Bindestrich)
Habe versucht
^ABC-DEF-$
Das liefert mir schon mal ein Match, wenn der String auch
ABC-DEF-
ist. Aber wie mache ich das hier mir dem Groß/Klein, auch wild durcheinander?
Das nachfolfgende "beliebige Anzahl beliebiger Ziffern oder Buchstaben, groß oder klein" bekomme ich gar nicht hin.
Ich teste (besser: bastele) mit solchen Seiten wie
https://regex101.com/
https://regexr.com/
Kann mir armen Irren bitte jemand helfen.
E.
ich hasse RegEx und ich werde es wohl auch nie wirklich lernen. Es erschließt sich mir einfach nicht. Keine Chance ...
Ich will prüfen, ob ein String folgendem Muster entspricht.
ABC-DEF-*
XXX
3 fixe, vorgegebene Ziffern oder Buchstaben, groß oder klein
YYY
3 fixe, vorgegebene Ziffern oder Buchstaben, groß oder klein
Bindestrich
fix, vorgegebenes Trennzeichen "-"
Der Stern
beliebige Anzahl beliebiger Ziffern oder Buchstaben, groß oder klein
z.B.
XXX = ABC
YYY = DEF
dann
ABC-DEF-17-021 --> match
AB-DEF-17-021 --> no match (erste Gruppe vor dem Bindestrich keine 3 Zeichen)
ABC-DEF-1 --> match
ABC-DEF --> no match (Bindestrich am Ende fehlt, keine nachfolgen Zeichen nach dem Bindestrich)
Habe versucht
^ABC-DEF-$
Das liefert mir schon mal ein Match, wenn der String auch
ABC-DEF-
ist. Aber wie mache ich das hier mir dem Groß/Klein, auch wild durcheinander?
Das nachfolfgende "beliebige Anzahl beliebiger Ziffern oder Buchstaben, groß oder klein" bekomme ich gar nicht hin.
Ich teste (besser: bastele) mit solchen Seiten wie
https://regex101.com/
https://regexr.com/
Kann mir armen Irren bitte jemand helfen.
E.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 545864
Url: https://administrator.de/forum/regex-hilfe-545864.html
Ausgedruckt am: 31.03.2025 um 14:03 Uhr
10 Kommentare
Neuester Kommentar
Moin,
Gruß,
Dani
P.S. Wieder einmal zu langsam...
Kann mir armen Irren bitte jemand helfen.
Gerne, ich versuch's mal: Link.Gruß,
Dani
P.S. Wieder einmal zu langsam...
Hi
https://regex101.com/r/H82UjB/1
Sowas? Das flag macht hier die gross klein Geschichte. Ansonsten kannst du auch abcABC in den Klammern schreiben
.+ Hinten macht halt das ALLE Zeichen erlaubt sind. Wenn du wirklich nur Buchstaben und Zahlen willst, kannst du auch [a-z0-9]+ schreiben
https://regex101.com/r/H82UjB/1
Sowas? Das flag macht hier die gross klein Geschichte. Ansonsten kannst du auch abcABC in den Klammern schreiben
.+ Hinten macht halt das ALLE Zeichen erlaubt sind. Wenn du wirklich nur Buchstaben und Zahlen willst, kannst du auch [a-z0-9]+ schreiben

Ich will eine RegEx-Prüfung auf "Text beginnt mit gegeben String".
Dann lass das Dollarzeichen am Ende des Pattern weg, dat reicht dafür dann ^ABC-DEF-
Hi,
Man muss es ja nicht bis ins letzte verstehen
Geh mal auf regexr.com Da kannst deine Patterns direkt mit den entsprechenden Strings prüfen.
Auch ein kleines Cheat-Sheet ist dabei.
Wenn das Muster immer das gleiche ist kannst folgendes versuchen:
Wen es nach dem Bindestrich beliebig sein soll, dann so:
Alles in eckigen Klammer ist variabel und muss mindestens eines der angegebenen enthalten.
In den geschweiften Klammern legst du fest wie oft es mindestens vorkommen muss (vor dem Beistrich) und maximal vorkommen darf (nach dem Beistrich). Ist das Feld nach dem Beistrich leer, dann so oft wie es halt auftritt.
Der Punkt hat in RegEx eine Funktion. Du musst ihn also escapen. Das geht mit \
Ich bin in RegEx auch nicht der Pro. Mit regexr.com bin ich aber immer zum Ziel gekommen.
Grüße
ich hasse RegEx und ich werde es wohl auch nie wirklich lernen. Es erschließt sich mir einfach nicht. Keine Chance ... 
Regex ist ist ein Biest, da gebe ich dir recht. RegEx ist aber auch extrem hilfreich.Man muss es ja nicht bis ins letzte verstehen
Geh mal auf regexr.com Da kannst deine Patterns direkt mit den entsprechenden Strings prüfen.
Auch ein kleines Cheat-Sheet ist dabei.
Ich will prüfen, ob ein String folgendem Muster entspricht.
ABC-DEF-*
ABC-DEF-*
Wenn das Muster immer das gleiche ist kannst folgendes versuchen:
([A-z]{3,}\.[A-z]{3,}-[0-9]{1,})
Wen es nach dem Bindestrich beliebig sein soll, dann so:
([A-z]{3,}\.[A-z]{3,}-.*)
Alles in eckigen Klammer ist variabel und muss mindestens eines der angegebenen enthalten.
In den geschweiften Klammern legst du fest wie oft es mindestens vorkommen muss (vor dem Beistrich) und maximal vorkommen darf (nach dem Beistrich). Ist das Feld nach dem Beistrich leer, dann so oft wie es halt auftritt.
Der Punkt hat in RegEx eine Funktion. Du musst ihn also escapen. Das geht mit \
Ich bin in RegEx auch nicht der Pro. Mit regexr.com bin ich aber immer zum Ziel gekommen.
Grüße