[Dresden-pm] RegExps anders herum

Josef Spillner 2005 at kuarepoti-dju.net
Die Aug 22 05:48:27 PDT 2006


Hallo,

hat sich schonmal jemand mit dem Problem beschäftigt, zu einem gegebenen 
regulären Ausdruck alle möglichen Werte, die diesem entsprechen, zu erzeugen?
Für \d* würde man natürlich eine unendliche Menge bekommen, aber für gewisse 
real-world-Ausdrücke macht das schon Sinn.

Man kann es verwenden,
- um nachzuschauen, wieviel mögliche Werte beschrieben werden
- um einen initialen Wert zu erhalten, der die Bedingungen erfüllt
- um eine schematische Darstellung zu konstruieren, die durch Menschen 
verstanden wird

Letzteres meint z.B. die Postleitzahlen. Statt \d{5}|[OW]-\d{4} würde also 
dastehen: Bitte Wert nach Schema "xxxxx" oder "O-xxxx" bzw. "W-xxxx" 
eingeben, wobei x Ziffern sind (Beispiel: 00000 oder O-0000 oder W-0000).

Natürlich ist 00000 keine valide Postleitzahl, aber das erfordert Kenntnisse 
über die syntaktische Darstellung hinaus und soll hier mal keine Rolle 
spielen.
Die Frage ist, ob es Tools in Perl oder anderen Sprachen gibt, die es mir 
erlauben, diese Umwandlungen vorzunehmen.

Josef