Akustikkoppler: RegExp für Preis

Hi, ich habe ein problem mit einem Regulären Audruck. Ich habe ein Formular in das man den Eintrittspreis für ein Konzert eingeben kann und wollte diesen über einen Regulären Ausdruck überprüfen.

Es sollte möglich sein den Preis als,

1. euro      (z.b.: 5),
2. euro.cent (z.B: 5.00),
3. euro,cent (z.B: 5,00),

einzugeben.

Habe das jetzt so probiert:

/([0-9]+)((.|,)([0-9][0-9]))?/

aber irgendwie funktioniert das nicht.
Wie müsste der Ausdruck denn aussehen das es funktionieren würde?

mfg Akustikkoppler.

  1. aber irgendwie funktioniert das nicht.
    Wie müsste der Ausdruck denn aussehen das es funktionieren würde?

    Bei mir funzt es total.

    mfg Beat

    --
    Woran ich arbeite:
    X-Torah
    ><o(((°>           ><o(((°>
       <°)))o><                     ><o(((°>o
  2. Hallo,

    Habe das jetzt so probiert:

    /([0-9]+)((.|,)([0-9][0-9]))?/

    aber irgendwie funktioniert das nicht.

    "funktioniert nicht" ist keine ausreichende Problembeschreibung. Passt der Ausdruck auf zu viele/zu wenige Strings, oder produziert er gar einen Fehler?

    Wie müsste der Ausdruck denn aussehen das es funktionieren würde?

    Ausgegangen davon, dass er zu viele Strings matcht:

    Wenn der Ausdruck auf einen vollständigen String passen soll, musst du das dem Parser durch die Steuerzeichen "^" und "$" mitteilen.

    mfg. Daniel

    1. Wenn der Ausdruck auf einen vollständigen String passen soll, musst du das dem Parser durch die Steuerzeichen "^" und "$" mitteilen.

      Vielen, vielen dank! Genau das war wohl das Problem.

      So funktioniert er jetzt:

      /^([0-9]+)((.|,)([0-9][0-9]))?$/

      mfg Akustikkoppler

    • "funktioniert nicht" ist keine ausreichende Problembeschreibung.

    Für meinen Ausdruck von oben ist fast alles richtig, auch wenn ich totalen
    murks schreibe, die fehler treten so wie ich das sehe ab dem "." oder "," auf.

    Beispiele für eingaben:

    • [feld leer] => falsch  (sollte auch so sein)
    • 5           => richtig (sollte auch so sein)
    • a           => falsch  (sollte auch so sein)
    • 5.          => richtig (sollte falsch sein)
    • 5,          => richtig (sollte falsch sein)
    • 5.aa        => richtig (sollte falsch sein)
    • 5hdh        => richtig (sollte falsch sein)
    • 5.000000    => richtig (sollte falsch sein)

    ich weiß leider nicht an was das hängt, habe den Ausdruck auch schon
    im RegEx Coach getestet, da scheint er zu funktionieren.