Hi Alex!
Ich seh schon, ich werd mich noch voll blamieren hier ;-)
Mögliche Worte(Zeichenketten) sind z.b: aaa, abcabcc, ac, bcbbbb, ba, ... Keine Worte aus dieser Sprache wären: cabac, c, abccb
^....wäre ja eigentlich auch ungueltig, oder?
UUuuuppssi! stimmt, zu schnell getippt!
Also darf ac,bc,a und b jeweils beliebig oft vorkommen. Wie dazu die RegEx ausschaut sollte eigentlich klar sein ;-) (siehe auch perldoc perlre *vbg* SCNR)
$var =~ /^(acbcab)+$/; sollte imho Deinen Anforderungen genügen
Alle Möglichkeiten aufzählen hätte ich auch gekonnt ;-)
Stell dir mal vor du hättest mehr Buchstaben, oder mehrere Kominationen die nicht vorkommen dürfen, dann wirds mit "das darf vorkommen, oder das darf vorkommen, oder das darf vor..." ein bischen kompliziert ;-)
*hoffemichnichtzublamieren*
ganz meinerseits, spaziere nämlich "on the edge" - wie du vielleicht weisst bin ich ja nicht der grösste Freund/Kenner von RegExpr.
Ohne Dacherl und Perl-Statements (^, $)!
Es sollte Allgemein gültig sein :-(
Du hast nur die folgenden Mengen-Operatoren zur Verfügung:
* >=0
+ >0
() Gruppierung
Keine $-Tricks bitte sehr ;-)
Und wenn es nebenbei Deine Hausaufgaben löst, solls nicht so schlimm sein, den wenn meine Lösung stimmt, saß ich wenigstens nicht zu lange dran, um darüber verärgert zu sein. :-)
Es ist keine Hausaufgabe, wir sind einfach nur beim Üben drübergestolpert!
liebe grüsse
Bernhard