Avatar billede columbus Nybegynder
03. november 2001 - 15:19 Der er 3 kommentarer og
1 løsning

Dato validering

Jeg vil lave en dato validering der kan tage en dato på formen: DD-MM-YY eller DD-MM-YYYY
Men nedenstående, kan også tage et årstal på 3 cifre, hvorfor:
([0-9]{1,2})[-\\/]([0-9]{1,2})[-\\/]([0-9]{2}|[0-9]{4})
Avatar billede erikjacobsen Ekspert
03. november 2001 - 16:22 #1
^([0-9]{1,2})[-\\/]([0-9]{1,2})[-\\/]([0-9]{2}|[0-9]{4})$

Avatar billede columbus Nybegynder
03. november 2001 - 16:51 #2
Så simpelt kan det gøres. Tak for det!
Avatar billede erikjacobsen Ekspert
03. november 2001 - 16:55 #3
Du må også gerne få en lille forklaring :)
... eller andre der kigger forbi ...

Et regulært udtryk matcher (normalt) blot et sted i strengen, og du kan derfor få
matched følgende (det matchede er med store bogstaver, i virkeligheden er
det tal)

  DD-MM-YYy

Så den siger blot ja til at DD-MM-YY findes et eller andet sted. Med ^ og $ siger man,
at det man matcher efter skal være hele strengen. Det er faktisk sjældent man i
praksis kan undvære ^ og $ ...
Avatar billede jawz Nybegynder
18. september 2002 - 16:32 #4
Jeg leder efter en regex der ikke bliver godkendt når en dato som 99-99-9999 bliver valideret, den skal hedde noget med:
/^(([1-31])[-|\/]([1-12])[-|\/]([\d]{4}))$/
men netscape vil ikke godtage denne i et javascript der ser således ud:

function datoOk( dato ){
    var str = dato
    var filter = /^(([1-31])[-|\/]([1-12])[-|\/]([\d]{4}))$/
    if ( filter.test( str ) ){
        alert("Den er god nok")
    }
    else{
        alert("Den går ikke")
    }
}

Hvad gør jeg forkert?
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