regulärer Ausdruck und Hex-Werte

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • regulärer Ausdruck und Hex-Werte

    Hallo,

    ich habe den folgenden regulären Ausdruck.
    Dieser sucht im übergebenen String nach 0x00 bis 0x09 oder nach 0x0b bis 0x0c.
    PHP-Code:
    ereg("^(([\x{0-9}])|([\x{b-c}]))$"$t
    Wenn ich nun noch zusätzlich nach 0x0e bis 0x19 suchen möchte, erweitere ich ihn so:
    PHP-Code:
    ereg("^(([\x{0-9}])|([\x{b-c}])|([\x{e-19}]))$"$t
    Nur führt dies zu einem Fehler.
    Kann mir jemand sagen, warum?

    Poscht

  • #2
    weil e-19 keine zeichenklasse ist. da kannst du zahlen und buchstaben nicht mixen.

    gruß
    peter
    Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
    Meine Seite

    Kommentar


    • #3
      weil e-19 keine zeichenklasse ist. da kannst du zahlen und buchstaben nicht mixen
      Wenn ich das nur in Zahlen versuche, erhalte ich leider auch einen Fehler. ("Warning: ereg() [function.ereg]: REG_ERANGE in ...")
      PHP-Code:
      ereg("^(([x{0-9}])|([x{b-c}])|([x{14-19}]))$"$t
      Poscht

      Kommentar


      • #4
        Auf die Schnelle zusammengebastelt:
        Code:
        Regex: 0x(?:0(?:[0-9]|b|c|e)|1[4-9])
        Du solltest auch nicht mehr auf die ereg Funktionen setzen, sondern auf preg_match und Konsorten.

        Grüße
        Zuletzt geändert von Griecherus; 11.03.2008, 11:55.
        Nieder mit der Camel Case-Konvention

        Kommentar

        Lädt...
        X