09. maj 2001 - 12:22 Der er 14 kommentarer og
1 løsning

Hvad er der galt med denne regular expression?

/[abcdefghijklmnopqrstuvxyzæøå]*/

Den skal validere at et brugernavn KUN består af lovlige tegn og ikke f.eks. ?=)(/&%¤#\"!§?
Avatar billede erikjacobsen Ekspert
09. maj 2001 - 12:23 #1
/^[abcdefghijklmnopqrstuvxyzæøå]*$/
Avatar billede erikjacobsen Ekspert
09. maj 2001 - 12:24 #2
husk w
09. maj 2001 - 12:31 #3
Altså sådan:


^[\\w]*$
Avatar billede erikjacobsen Ekspert
09. maj 2001 - 12:33 #4
Jeg mente nu

    /^[abcdefghijklmnopqrstuvwxyzæøå]*$/
09. maj 2001 - 12:47 #5
Sikke detaljer, men jeg mener at \\w skulle betyde sådan cirka det samme. Det dækker bare lidt mere bredt, og fylder mindre i koden.
09. maj 2001 - 12:49 #6
Ok, \\w inkluderer ikke ÆØÅ, men hvordan gøres det?
Avatar billede erikjacobsen Ekspert
09. maj 2001 - 13:02 #7
én ting af gangen: virker mit forslag?
ok, to ting af gangen: /^[\\wæøå]*$/  burde gøre det samme
09. maj 2001 - 13:07 #8
Ja, dine forslag virker, og du skal have tak for hjælpen. Nu tror jeg efterhånden jeg har fået styr på regular expressions. Der var lige nogle grundlæggende ting, som jeg ikke havde fået fat i.
Avatar billede erikjacobsen Ekspert
09. maj 2001 - 13:10 #9
Nej, de virker ikke - ikke helt. ^ og $ anbragt forrest og sidst sikrer at du
checker i hele strengen. Uden dem undersøger du bare om der står et bogstav
et eller andet sted - eller sågar, på grund af *-en, en tom streng - og det gør
der jo altid. Du skal vel have mindst ét tegn i et navn:
  /^[\\wæøå]+$/ 
eller (jeg tror da nok at JavaScript understøtter det), hvis det mindst skal være på
3 tegn og højst 20:
  /^[\\wæøå]{3,20}$/ 



09. maj 2001 - 13:14 #10
Det ved jeg godt, men det laver jeg i en seperat expression, så de fejlbeskeder jeg sender ud bliver mere præcise.
Avatar billede jakoba Nybegynder
09. maj 2001 - 13:14 #11
Jep, javascript understøtter det. så det er nok den perfekte mindst 3 og højest 20 bogstaver expression :)
09. maj 2001 - 13:15 #12
Jeg har lavet disse 4 expressions:

Err1 =/^[^0-9]/i; //Start aldrig med et tal
            Err2 =/^[a-zæøå\\.\\_]*$/i //Tjek for lovlige tegn
            Err3 =/^[^\\.\\_]/i; //Start aldrig med _ eller .
            Err4 =/^[\\S]{6,}$/i  //Brugernavnet skal være mindst 6 tegn
            Err5 =/^[\\S]{0,10}$/i  //Brugernavnet skal være højst 10 tegn
Avatar billede erikjacobsen Ekspert
09. maj 2001 - 13:21 #13
Skal det så ikke være Err2 =/^[a-zæøå0-9\\.\\_]*$/i    ??
09. maj 2001 - 13:40 #14
Jo, selfølgelig, og igen tak.

Sig mig Erik er du blevet fyret hos DMU og ansat hos eksperten, eller har du bare en fridag?
Avatar billede erikjacobsen Ekspert
09. maj 2001 - 13:49 #15
Fridag - nej, men jeg har et par pauser :)
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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