[REGEX] gültige Uhrzeit mit Ausdruck pürfen

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

  • [REGEX] gültige Uhrzeit mit Ausdruck pürfen

    Hallo zusammen,

    hab mir gerade das tut über Ausdrucke angesehen und versuche nun eine Uhrzeit auf Gültigkeit zu prüfen. Folgender Code schlägt fehl obwohl ich nach dem tut der Meinung bin, dass es so richtig ist ... wahrscheinlich habe ich da was falsch verstanden. Wäre nett, wenn mir jemand erklären kann was ich falsch mache.

    Hier der Code:
    PHP-Code:
    <?php
        $wert
    ="07:10";
        if(
    ereg ("(^[0-23])(.:)([0-59]$)"$wert)) {
            echo 
    "jupp!";
        }
    ?>
    Danke!

  • #2
    Re: [REGEX] gültige Uhrzeit mit Ausdruck pürfen

    PHP-Code:
    <?php
        $wert
    ="07:10";
        if(
    ereg ("(^[0-2][0-9])(\.|:)([0-5][0-9]$)"$wert)) {
            echo 
    "jupp!";
        }
        else
            echo 
    'fehler';
    ?>
    Code:
    <?php
        $wert="07:10";
        if(ereg ("(^[0-2][0-9])(\.|:)([0-5][0-9]$)", $wert)) {
            echo "jupp!";
        }
        else
            echo 'fehler';
    ?>
    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


    Kommentar


    • #3
      vielen Dank für die schnelle Hilfe ...
      leider kapiere ich nicht so recht den Unterschied zwischen [0-23] und [0-2][0-9] also ich verstehe schon, dass deine Varianate die beiden ersten Stellen einzeln prüft, aber warum geht denn 0-23 nicht ?!

      BTW [0-2][0-9] lässt auch 29 Stunden zu

      Kommentar


      • #4
        Original geschrieben von Patrick_PQ
        aber warum geht denn 0-23 nicht ?!
        weil du 07 und nicht 7 im string hast. '7' != '07'

        Original geschrieben von Patrick_PQ
        BTW [0-2][0-9] lässt auch 29 Stunden zu
        das muss so sein. das ist die neue zeitverordnung....
        INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


        Kommentar


        • #5
          ich denke ne kombi aus regex und weiteren bedingungen führt am schnellsten zum ziel
          Code:
          echo (preg_match('/^[\d]{2}[.|:][\d]{2}$/',$wert) && substr($wert,0,2)
          <=24 && substr($wert,3,2)<60) ?
          	'Uhrzeit':'keine Uhrzeit';
          Beantworte nie Threads mit mehr als 15 followups...
          Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

          Kommentar


          • #6
            vielen Dank an alle für die Erklärungen und Vorschläge ... werde mich jetzt mal in mein Handbuch vertiefen und versuchen die ganzen wilden Ausdrücke nachzuvollziehen!

            Kommentar

            Lädt...
            X