14. juni 2003 - 19:41
Der er
14 kommentarer og 1 løsning
Min. 3 tegn og kun a-z samt _ og -
Jeg har denne funktion som tjekker om et brugernavn er over 3 tegn langt: if (!(document.opret.username.value.length > 3)) { alert('Please specify a valid username!'); document.opret.username.focus(); return false; } Hvordan får jeg den til samtidig at tjekke at brugernavnet kun indeholder a til z, tallene 0 til 9 og _ og -
Annonceindlæg tema
Offentlig digitalisering
Fra effektivisering til digital suverænitet. Hvordan skaber det offentlige en digital fremtid med AI, sikkerhed og kontrol i centrum?
regex = /[a-z0-9_-]{3}/i; if (!regex.test(document.opret.username.value)) { alert('Please specify a valid username!'); document.opret.username.focus(); return false; } Accepter også store bogstaver -- skal lige teste den selv også !-)
(håber ikke jeg er for besværlig) Kan man ikke slå disse linjer sammen: regex = /[a-z0-9_-]{3}/i; if (!regex.test(document.opret.username.value)) { Så man ikke behøver at lave en slags variabel, men bare smækker det hele sammen til en stor linje? Og den skal både acceptere store og små bogstaver :-)
<script language="JavaScript" type="text/javascript"> f = document.opret.username.value function chkNavn(f) { if(f.match(/^[a-z0-9-]+$/i) && f.length>3) { return true;} else{ alert('Please specify a valid username!') document.opret.username.focus();}}
roenving >> Det skal vel være: /[a-z0-9_-]{3,}/i;
Jeg kunne f***** ikke få det til at virke -- er bestemt heller ik' ekspert i RegExp :-(
>>grunken Sæ'fø'li' -- den fik jeg som den første li'e rettet, men den blev ved med at acceptere .: osv. -- kan du forklare den, så jag kan lære det ,-)
Er der nogen der kan bekræfte at denne virker perfekt? if (!(document.opret.username.value.length > 2 && document.opret.username.value.match(/^[a-z0-9-]+$/i))) { Er taget ud fra grunkens!
der skal lige tilføjes underscore: /^[a-z0-9_-]+$/i -- jeg har ikke præcis testet dit udtryk men regexp'en
Så ser det ud til at jeg fik bikset en sammen som kan anvendes som den eneste: /^([a-z0-9_-]{3,})+$/i -- altså: if (document.opret.username.value.match(/^([a-z0-9_-]{3,})+$/i)) {
14. juni 2003 - 20:26
#10
if (! selvfølgelig
14. juni 2003 - 20:35
#11
Nu er jeg kommet frem til denne (forhåbentlige) løsning: if (!(document.register.username.value.length > 2 && document.register.username.value.match(/^[a-z0-9_-]+$/i))) { Hvis det ser godt ud så vil jeg gerne have grunken og roenvig til at lave et svar, så fordeler jeg pointene!
14. juni 2003 - 20:42
#12
Ved en hurtig test reagerede den ordentligt hver gang, så '-)
14. juni 2003 - 20:44
#13
roenving var klart mest ihærdig.... giv ham points :) >roenving du skal IK være ked af at du er "regexp newbee" :), jeg er generelt bare newbee ;D
14. juni 2003 - 20:46
#14
Hmm, fair nok! Takker for alle svar :-D Og jeg er nok mest newbee her, men hva' f***.... :-D
14. juni 2003 - 20:48
#15
-- jamen takker for points ;~} -- men hvad f***** skal der til ... de er hammersmarte de der regulære udtryk, men de har vist deres mærkværdigheder ... -- en dag lærer jeg nok noget ,-)
Vi tilbyder markedets bedste kurser inden for webudvikling