Prüfen ob Datum richtig ist
dennis_b
- javascript
0 Richard0 Vinzenz Mai0 Ashura0 Vinzenz Mai
Hallo leute,
ich möchte das eine User Datums eingabe "z.B. in der Form tt.mm.yyyy"
vor dem Absenden der Mail oder was auch immer geprüft wird.
Damit meine ich ohne eine Menge if schleifen sondern Irgenwie über das Date Objekt? Ich kenne z.B isDate() von VB, gibt sowas Ähnliches auch bei JS oder eine Methode ohne großen aufwand??
Ich Danke allen die mir Helfen /auch alle die wollen/ :-)
THX
MfG
Dennis
Hallo,
Hmm, wie sieht´s aus mit regulären Ausdrücken? Verhasst zwar, jedoch hilfreich. (Zitat von Alfred M. Steinhausen)
Viele Grüße
Hallo Richard,
Hmm, wie sieht´s aus mit regulären Ausdrücken? Verhasst zwar, jedoch hilfreich. (Zitat von Alfred M. Steinhausen)
ein regulärer Ausdruck für ein gültiges Datum sollte extrem komplex sein, wenn überhaupt möglich. Überlege selbst, welche Probleme auftreten können.
Die Idee mit dem Date-Objekt verspricht eine einfachere Lösung.
Freundliche Grüße
Vinzenz
Hallo Vinzenz.
Die Idee mit dem Date-Objekt verspricht eine einfachere Lösung.
Mir fällt keine ein.
Entweder entspricht die übergebene Zeichenkette einem gültigen Format und ein entsprechendes Date-Objekt wird erzeugt, oder die Zeichenkette wird ignoriert und es wird der aktuelle Zeitpunkt fürs Date-Objekt verwendet.
Ich wüsste nicht, wie man hier die Gültigkeit eines Formates überprüfen könnte.
Einen schönen Donnerstag noch.
Gruß, Ashura
Hallo Ashura,
Die Idee mit dem Date-Objekt verspricht eine einfachere Lösung.
Mir fällt keine ein.
wozu sich eine einfallen lassen, suchen und finden:
Struppis völlig unverständliche und komplexe Lösung http://javascript.jstruebig.de/javascript/39/, verlinkt von ihm selbst im gleichen Thread mit den wunderbaren, auf Anhieb verständlichen und nachvollziehbaren regulären Ausdrücken von Gunnar und seth.
Absolut ernst gemeinte Grüße
Vinzenz
wozu sich eine einfallen lassen, suchen und finden:
Struppis völlig unverständliche und komplexe Lösung http://javascript.jstruebig.de/javascript/39/, verlinkt von ihm selbst im gleichen Thread mit den wunderbaren, auf Anhieb verständlichen und nachvollziehbaren regulären Ausdrücken von Gunnar und seth.
*heul*
Absolut ernst gemeinte Grüße
ich gelobe Besserung und werde an einem VHS Kurs teilnehmen, um die Schönheit Regulärer Ausdrücke zu erkennen.
"auf du und du mit dem lookbehind Operator"
Struppi.
Hallo Struppi,
*heul*
*tröst*
ich gelobe Besserung
Ich auch.
Der OP möge bitte Gunnars RegExp (gern auch kommentiert von seth) mit Deiner Funktion vergleichen und selbst entscheiden, ob ein Vorschlag und wenn ja welcher für ihn in Frage käme.
Freundliche Grüße
Vinzenz (diesmal betont neutral und sachlich)
Hello out there!
Der OP möge bitte Gunnars RegExp (gern auch kommentiert von seth) mit Deiner Funktion vergleichen und selbst entscheiden, ob ein Vorschlag und wenn ja welcher für ihn in Frage käme.
Der reguläre Ausdruck war die Antwort „und es geht doch“ auf „das geht nicht“. Es ist wohl nicht die effizienteste Art und war auch nicht zur praktischen Anwendung bestimmt.
Der reguläre Ausdruck matcht auch nur Daten im internationalen Datumsformat JJJJ-MM-TT gemäß ISO 8601. Das ist zwar auch nach DIN 5008 das in Deutschland gültige, dummerweise ist TT.MM.JJJJ aber noch weit verbreitet, auch TT.MM.JJ, sogar T.M.JJJJ und T.M.JJ.
Eine Datumsprüfung müsste dem Butzer alle Varianten offenhalten.
See ya up the road,
Gunnar
Hallo Gunnar,
Der reguläre Ausdruck war die Antwort „und es geht doch“ auf „das geht nicht“. Es ist wohl nicht die effizienteste Art und war auch nicht zur praktischen Anwendung bestimmt.
das ist mir klar. Ich bin beeindruckt, dass es geht.
Der reguläre Ausdruck matcht auch nur Daten im internationalen Datumsformat JJJJ-MM-TT gemäß ISO 8601.
Das ich für eigene Zwecke gerne nutze, insbesondere auch wegen der guten Sortiermöglichkeiten.
Das ist zwar auch nach DIN 5008 das in Deutschland gültige, dummerweise ist TT.MM.JJJJ aber noch weit verbreitet, auch TT.MM.JJ, sogar T.M.JJJJ und T.M.JJ.
Nach meinen bisherigen Erfahrungen verbreiteter als das internationale Datumsformat, Tendenz gleichbleibend.
Eine Datumsprüfung müsste dem Butzer alle Varianten offenhalten.
Ein klein wenig Eigeninitiative sollte man dem OP schon überlassen. Und eure kommentierte Version sollte sich auch mit nicht zu hohem Aufwand anpassen lassen.
Freundliche Grüße
Vinzenz
Hello out there!
Und eure kommentierte Version sollte sich auch mit nicht zu hohem Aufwand anpassen lassen.
Das glaub ich nicht. Ein regulärer Ausdruck für TT.MM.JJJJ sähe ganz anders aus.
Bei JJJJ-MM-TT liest du ja erst das Jahr, weißt also nach 4 Zeichen, ob es ein Schaltjahr ist, und weißt dann nach Einlesen des Monats, welche Ziffernfolgen als Tag infrage kommen.
Bei TT-MM-JJJJ musst du für den Tag alles bis 31 zulassen, dann beim Monat prüfen, ob die Tagenagabe dazu passt, und wenn du '29.02.' gelesen hast, auch noch auf ein Schaltjehr prüfen.
See ya up the road,
Gunnar
Hallo Gunnar,
Bei TT-MM-JJJJ musst du für den Tag alles bis 31 zulassen, dann beim Monat prüfen, ob die Tagenagabe dazu passt, und wenn du '29.02.' gelesen hast, auch noch auf ein Schaltjehr prüfen.
stimmt, daran habe ich nicht gedacht :-(
Freundliche Grüße
Vinzenz
Hallo Ingrid,
Hmm, wie sieht´s aus mit regulären Ausdrücken? Verhasst zwar, jedoch hilfreich. (Zitat von Alfred M. Steinhausen)
ein regulärer Ausdruck für ein gültiges Datum sollte extrem komplex sein, wenn überhaupt möglich.
Wunderschön: http://forum.de.selfhtml.org/archiv/2006/3/t126272/#m814813 ff.
Freundliche Grüße
Vinzenz