Avatar billede teutebod Nybegynder
24. juni 2004 - 11:34 Der er 3 kommentarer og
1 løsning

Dato validering

jeg har lavet følgende regex til at validere om en dato er af formatet (dd-mm-yyyy): ^([0-3][0-9]-[0-1][0-9]-[1-2][0-9]{3})$ . Findes der en måde også at checke om personen har skrevet 39 som dag hvor max vel er 31, i så fald hvordan ser den ud?
Avatar billede soreno Praktikant
24. juni 2004 - 12:04 #1
Det bliver et kæmpe regulært udtryk hvis alle dato betingelser skal være opfyldt.

En bedre løsning er typisk at bruge et programmeringssprog som har en indbygget dato klasse. F.eks. Date i Java.
Avatar billede soreno Praktikant
24. juni 2004 - 12:08 #2
All legal dates of the form 15/08/1961 in the range 1900-2099.
((0[1-9]|1[0-9]|2[0-8])/(0[1-9]|1[0-2])/(19[0-9][0-9]|20[0-9][0-9]))|(29/02/((19(04|08|([2468][048])|([13579][26])))|(20(([02468][048])|([13579][26])))))|((29|30)/(01|0[3-9]|1[0-2])/(19[0-9][0-9]|20[0-9][0-9]))|(31/(0[13578]|1[02])/(19[0-9][0-9]|20[0-9][0-9]))
Avatar billede teutebod Nybegynder
24. juni 2004 - 16:27 #3
Faktisk ville jeg bare sikre mig at personen ikke byttede om på dag og måned, og derfor kom til at skrive 21 som måned. Så jeg snuppede lidt fra den regex du postede, og kom frem til: ^(([1-9]|0[1-9]|1[0-9]|2[0-9]|3[0-1])-([1-9]|0[1-9]|1[0-2])-[1-2][0-9]{3})$.

Læg et svar for points :)
Avatar billede soreno Praktikant
24. juni 2004 - 16:29 #4
Ok.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester