So, nach einigem hin und her (Beschreibungen/Tutorials lesen) hab ich eine Lösung gefunden, die kurz und halbwegs elegant ist, allerdings denk ich, dass jemand mit mehr Kenntnis der Materie die noch optimieren kann:
'/([A-Za-z]+\W+|\W+[A-Za-z]+|\d+\D+|\D+\d+)+/'
Ich frage hiermit im Grunde nach:
BUCHSTABE plus SONDERZEICHEN
oder
SONDERZEICHEN plus BUCHSTABE
oder
ZAHL plus NICHT-ZAHL
oder
NICHT-ZAHL plus ZAHL
Die Dopplung gefällt mir noch nicht, aber ich weiß nicht, wie ich die weg bekomme ohne dass der Ausdruck wieder ungenau wird. Zwei verschiedene Operatoren wie + und ? zu verwenden hinter den einzelnen Elementen beeinflusst nur ob der andere Operator greedy oder ungreedy ist...
Also wenn das noch wer lösen kann bin ich happy, ansonsten schreib ich das in den Code.
Die Dopplung brauch ich, a die Beispiele auch durchmixt Sinn ergeben müssen...
__________________
Toastbrot!
|