tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
2
ZUGRIFFE
530
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    StehtimSchilf StehtimSchilf ist offline Mitglied Gold
    Registriert seit
    Oct 2003
    Beiträge
    117
    Hi Forum

    Ich muss auf Basis eines Regular Expressions einen String erstellen.

    Bspw.:
    in: [A-z][1-9]?
    out: A1 oder b8 oder Q

    Ich kann nicht einen Random-String erstellen und den dann prüfen ob es passt, da der Zeichenraum viel zu gross wird, resp. die RegExps nicht immer so simpel sind wie obiges Beispiel. Für Java habe ich was gefunden, doch verwendet diese Klasse noch ein zusätzliches gröberes Java-Paket, wodurch die Konvertierung in C# komplexer wird.

    Ideen?

    cheerioh
    SiS
     

  2. #2
    Avatar von VScan
    VScan VScan ist offline Mitglied Gold
    Registriert seit
    Dec 2008
    Ort
    Munich
    Beiträge
    131
    Hallo StehtimSchilf,

    leider ist mir nichts bekannt, das Dein Problem direkt "erschlagen" würde,

    aber ich würde an Deiner Stelle mit Chars (ASCII) arbeiten, dann kannst Du die Dezimalen Werte prüfen und danach das ASCII umwandeln, allerdings musst Du die Grenzwerte definieren, wo halt a anfängt, also 97 Dez. und z aufhört,was dann 122 Dez. wäre, das gleiche Spiel mit Großbuchstaben und Zahlen und dann musst Du nur noch die Entschlüsselung des Regulären Ausdrucks vornehmen, schon gehts ab....


    Hier ein Link zu einer ASCII-Tabelle: http://www.asciitable.com/


    Viele Grüße
     

  3. #3
    StehtimSchilf StehtimSchilf ist offline Mitglied Gold
    Registriert seit
    Oct 2003
    Beiträge
    117
    Hallo VScan

    "schon gehts ab..." das ist ja der Grund, warum die Java-Lösung einen zusätzlichen "Automaten" (theo. Informatik) verwendet, was auch so korrekt ist. Für ein Subset von regulären Ausdrücken funktioniert es bereits bspw.: (Hallo Welt)[A-z]{1,33} oder (+){1,1}[1-9]{1,2}[rot | grün | gelb]{1,3} Aber für Komplexeres, aben. oh ja "gehts ab".

    Auf Quantoren (+, *, ?) habe ich verzichtet. Es ist Pflicht, diese immer mit {min, max} anzugeben. Auch Zeichensätze (\d oder \w oder \s) sind nicht "erlaubt". Diese müssen mit [x-y] oder mit [x | y | z] angegeben werden.

    Ich kann mir aber nicht vorstellen, dass ich der erste bin, der auf Grund eines RegExp das Wörterbuch erstellen muss.

    Link auf vorhandene Lösungen sind immer gerne gesehen.

    cheerioh
    SiS
     

Ähnliche Themen

  1. Antworten: 3
    Letzter Beitrag: 25.12.08, 09:30
  2. Antworten: 1
    Letzter Beitrag: 11.10.07, 10:29
  3. Regular Expression
    Von DrOverflow im Forum CGI, Perl, Python, Ruby, Power Shell
    Antworten: 2
    Letzter Beitrag: 23.01.07, 09:16
  4. Regular Expression
    Von time-master im Forum PHP
    Antworten: 7
    Letzter Beitrag: 29.01.06, 15:22
  5. regular expression
    Von beate82 im Forum Algorithmen & Datenstrukturen mit Java
    Antworten: 0
    Letzter Beitrag: 17.12.04, 13:24