efmaster: Regular expression

Hi,

Ich bin derzeit am verzweifeln und hoffe nun über diesen Weg Hilfe zu finden.

Also wie folgt:

Ich habe einen String der soll Prüfen, ob

D123
J456
L789
W147
Z963

eingegeben wurde.

Soweit kein Problem,
der regex-Befehl lautet:
[D|J|L|W|Z][0-9]{3}

So nun zu meinem Problem ..
Es soll auch nichts eingegeben werden können (NULL) und dies sollte auch gültig sein.

Nun hab ich es versucht so zu machen:

\x00|([D|J|L|W|Z][0-9]{3})

Da ja die 00 Hexadezimal gesehn das NUL ist.

Hoffe ihr könnt mir helfen.

mfg
efmaster

  1. Hi,

    Es soll auch nichts eingegeben werden können (NULL) und dies sollte auch gültig sein.
    Nun hab ich es versucht so zu machen:
    \x00|([D|J|L|W|Z][0-9]{3})
    Da ja die 00 Hexadezimal gesehn das NUL ist.

    ein Nullbyte hat ein Byte mehr als "nichts", nämlich ein Leerstring. Übrigens prüft eine Regular Expression nur, ob ein Pattern in einem String _vorkommt_, nicht ob dieser String komplett daraus _besteht_.

    Cheatah

    --
    X-Self-Code: sh:( fo:} ch:~ rl:| br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
    X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes
    1. Hi,

      Es soll auch nichts eingegeben werden können (NULL) und dies sollte auch gültig sein.
      Nun hab ich es versucht so zu machen:
      \x00|([D|J|L|W|Z][0-9]{3})
      Da ja die 00 Hexadezimal gesehn das NUL ist.

      ein Nullbyte hat ein Byte mehr als "nichts", nämlich ein Leerstring. Übrigens prüft eine Regular Expression nur, ob ein Pattern in einem String _vorkommt_, nicht ob dieser String komplett daraus _besteht_.

      Cheatah

      ja okey ... aber da dies noch vom Delphicode anhand dessen kontrolliert wird, prüft er schon, ob alles eingetragen wurde.

      wie könnt ich nun das mit dem Leerstring abfangen ?

      1. Hi efmaster!

        wie könnt ich nun das mit dem Leerstring abfangen ?

        ([D|J|L|W|Z][0-9]{3})?
        Alles oder Nichts!

        MfG H☼psel

        --
        "It's amazing I won. I was running against peace, prosperity, and incumbency."
        George W. Bush speaking to Swedish Prime Minister unaware a live television camera was still rolling, June 14, 2001
        Selfcode: ie:% fl:( br:> va:) ls:& fo:) rl:? n4:& ss:| de:] js:| ch:? sh:( mo:) zu:)
        1. Hi efmaster!

          wie könnt ich nun das mit dem Leerstring abfangen ?
          ([D|J|L|W|Z][0-9]{3})?
          Alles oder Nichts!

          MfG H☼psel

          Hab ich schon probiert ... nimmt er nicht an (er interprettiert es dann im Delphicode als falsch)

          1. Hi efmaster!

            ([D|J|L|W|Z][0-9]{3})?
            Hab ich schon probiert ... nimmt er nicht an (er interprettiert es dann im Delphicode als falsch)

            Welche Komponente?

            MfG H☼psel

            --
            "It's amazing I won. I was running against peace, prosperity, and incumbency."
            George W. Bush speaking to Swedish Prime Minister unaware a live television camera was still rolling, June 14, 2001
            Selfcode: ie:% fl:( br:> va:) ls:& fo:) rl:? n4:& ss:| de:] js:| ch:? sh:( mo:) zu:)
      2. Guten Tag,

        wie könnt ich nun das mit dem Leerstring abfangen ?

        Zum Beispiel mit !^(|[DJLWZ]{1}\d{3})$!

        Gruß
        Christoph Jeschke

        --
        Zend Certified Engineer
    2. Hi Cheatah,

      Übrigens prüft eine Regular Expression nur, ob ein Pattern in einem String _vorkommt_, nicht ob dieser String komplett daraus _besteht_.

      Kurze Anmerkung: eine Regular Expression ist ein String, und Strings prüfen nichts. Was entsprechend implementierte Algorithmen bzw. Funktionen in Anwendungsfällen tun, hängt von den Algorithmen ab und ist unterschiedlich.

      viele Grüße
      der Bademeister