Ergebnis 1 bis 6 von 6
  1. #1
    jeffglennfox ist offline Jungspund
    registriert
    08-08-2008
    Beiträge
    24

    Regex Problem mit Datum

    Hallo,

    ich möchte ein Datum in der Form "TT.M" nach 4 Zeichen auf Gültigkeit prüfen und habe das so probiert:

    /(0[1-9]|[12][0-9]|3[01])[ .][0-1]/;

    Funktioniert leider nicht. Zum besseren Verständnis, das vierte Zeichen (erste Zahl des Monats) darf nur 0 oder 1 sein.

    Wo liegt der Fehler ?

    Gruss, Markus

  2. #2
    Avatar von mikdoe
    mikdoe ist offline Administrator
    registriert
    01-05-2010
    Beiträge
    7.491

    AW: Regex Problem mit Datum

    Auf oder fragt man mit Pipe Symbol ab [0|1]. Aber was machst du vorne? Tut das was du willst?

    Hier kann man übrigens hervorragend Regexe entwickeln: https://regex101.com
    Und als Code zusammen testen: https://jsfiddle.net
    Das deutsche Javascript Forum http://forum.jswelt.de http://forum.jswelt.de/images/logoJsWeltForumV4_32x22.png
    Sorry wenn ich manchmal ohne Hallo und nur klein schreibe! Dann bin ich nicht unfreundlich sondern mit nervigem kleinem Touch Tablet zugange

  3. #3
    jeffglennfox ist offline Jungspund
    registriert
    08-08-2008
    Beiträge
    24

    AW: Regex Problem mit Datum

    Danke für die Antwort und die Links. Ursprünglich sieht die Regex so aus:

    /(0[1-9]|[12][0-9]|3[01])[.](0[1-9]|1[012])[.]/

    Da wird das Format "TT.MM." nach sechs Zeichen geprüft und zwar so, dass die Tage nicht größer 31 und die Monate nicht größer 12 sind. Ich will es einfach nur an der richtigen Stelle abschneiden bzw. ändern, dass die gleiche logische Prüfung schon nach 4 Zeichen geschieht, alo nach Eingabe "TT.M". Ich bin mit dieser ganzen Regex-Thematik eher ungeübt und lerne noch.

  4. #4
    Avatar von mikdoe
    mikdoe ist offline Administrator
    registriert
    01-05-2010
    Beiträge
    7.491

    AW: Regex Problem mit Datum

    Ich verstehe deine Regex noch nicht.
    Hab mal das erstellt: https://regex101.com/r/Br3Swn/1
    Und was müsste da jetzt durchgehen?
    Sowohl 10.10 als auch 10.1 matchen nicht obwohl sie es sollten oder sehe ich das falsch?
    Das deutsche Javascript Forum http://forum.jswelt.de http://forum.jswelt.de/images/logoJsWeltForumV4_32x22.png
    Sorry wenn ich manchmal ohne Hallo und nur klein schreibe! Dann bin ich nicht unfreundlich sondern mit nervigem kleinem Touch Tablet zugange

  5. #5
    tsseh ist offline Foren-Gott
    registriert
    19-05-2008
    Beiträge
    5.571

    AW: Regex Problem mit Datum

    ^(0[1-9]|[12][0-9]|3[01])[.]([0-1])$

  6. #6
    Avatar von jspit
    jspit ist offline Lounge-Member
    registriert
    19-06-2009
    Beiträge
    1.706

    AW: Regex Problem mit Datum

    Per RegEx können nur formale Fehler bei einer Datumseingabe abgefangen werden. Fehlerhafte Eingaben wie ein 30.02 werden nicht erkannt.
    Ich habe mal ein uraltes Skript rausgesucht, welches für eine deutsche Datumsnotation eine genaue Prüfung macht:
    Code:
    //Datum exakt prüfen Eingabe dd.mm.yyyy
    var text="30.2.2017";
    var ta=text.split(".");
    var da = new Date(ta[2],ta[1]-1,ta[0]);
    var dateok = da.getDate()==ta[0] && da.getMonth()==ta[1]-1 && da.getFullYear() == ta[2];
    alert(dateok);
    Test als jsfiddle

    LG jspit

Ähnliche Themen

  1. [PHP] Regex Problem mit URL
    Von dertypdernixkan im Forum Serverseitige Programmierung
    Antworten: 2
    Letzter Beitrag: 05-10-2014, 20:00
  2. Regex-Problem
    Von jeffglennfox im Forum JavaScript
    Antworten: 10
    Letzter Beitrag: 13-12-2012, 00:39
  3. Regex funktioniert / validiert Datum nicht richtig
    Von darki777 im Forum JavaScript
    Antworten: 1
    Letzter Beitrag: 05-05-2009, 11:30
  4. Regex Problem
    Von Tonda im Forum JavaScript
    Antworten: 14
    Letzter Beitrag: 26-01-2009, 13:18
  5. Antworten: 4
    Letzter Beitrag: 27-10-2006, 10:57

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •