Avatar billede bbe1379 Nybegynder
12. juni 2003 - 14:37 Der er 8 kommentarer og
2 løsninger

Øhhh "regex"

Hvem kan forklare lidt om logikken i "regex" strenge, og komme med et bud på hvordan man validerer en URL

F.eks.
http://(www.)mig.dk(/minside.htm)

Med () omkring ting som ikke er påkrævede, men skal være tilladte.
Avatar billede bbe1379 Nybegynder
12. juni 2003 - 14:39 #1
...det fattede eksperten ikke rigtigt.

"http://" er obligatorisk
"www." skal ikke være påkrævet
".dk" er obligatorisk
"/minside.htm" er ikke være påkrævet
Avatar billede -master-d- Nybegynder
12. juni 2003 - 15:21 #2
Her har du et script der gør det for dig.

<script>
function tjeckit() {
    var testing = "http://www.mig.dk/minside.htm"

    if (/^((http:\/\/www\.|www\.|http:\/\/|)[A-Za-z]+\.[A-Za-z]+)/.test(testing)) {
        alert('Din adresse er guldig');
    }
    else {
        alert('Din adresse er ikke gyldig');
    }
}
</script>

Så kan du vel selv tilpasse den til din side.
Avatar billede -master-d- Nybegynder
12. juni 2003 - 15:24 #3
hov den har ikke det sidste (/minside.htm) med, det laver jeg lige.
Avatar billede -master-d- Nybegynder
12. juni 2003 - 15:26 #4
Så hedder den :

<script>
function tjeckit() {
    var testing = "http://www.mig.dk/minside.htm"

    if (/^((http:\/\/www\.|www\.|http:\/\/|)[A-Za-z]+\.[A-Za-z]+(\/[A-Za-z]+\.[A-Za-z]+)|)/.test(testing)) {
        alert(testing);
    }
    else {
        alert('Din adresse er ikke gyldig');
    }
}
</script>
Avatar billede bbe1379 Nybegynder
13. juni 2003 - 09:15 #5
Kan du ikke forklare lidt om logiken og syntaksen. For mig ligner den en talebobbel fra Anders And når han bander :)

Hvad betyder f.eks.: ^
Og hvornår sætter man \/

???
Avatar billede bbe1379 Nybegynder
13. juni 2003 - 09:24 #6
Bortset fra det, så virker dit script ikke :)
Uanset hvad jeg taster er det OK
Avatar billede bbe1379 Nybegynder
13. juni 2003 - 12:33 #7
Jeg fandt noget kode, og rettede til - men her er lidt for ulejligheden.
Avatar billede bbe1379 Nybegynder
13. juni 2003 - 12:34 #8
re = /^(mailto|ftp|http):\/\/(?:[a-z0-9](?:[-a-z0-9]*[a-z0-9])?\.)+(com|net|org|us|biz|info|name|areo|coop|pro|museum|cc|tv|ws|ag|ar|as|at|be|bg|br|bz|ca|ch|cl|cocr|cx|cz|conz|de|dk|es|fr|comfr|tmfr|gi|gm|gr|gs|hk|ie|is|il|in|it|jp|cokr|li|lt|lu|md|ms|mx|nl|nu|ph|pl|ro|ru|sg|se|sk|tc|th|to|comtr|couk|meuk|plcuk|ltduk|orguk|netuk|us|vg|comar|comau|combo|combr|comcn|netcn|orgcn|comco|comdo|comec|commy|compa|compe|compk|compy|comtw|comuy|comve|aucom|brcom|cncom|decom|aucom|brcom|cncom|decom|gbcom|gbnet|hucom|nocom|qccom|rucom|sacom|secom|senet|ukcom|uknet|uscom|uycom|zacom)\b(?:\d+)?(?:\/[^;"'<>()\[\]{}\s\x7f-\xff]*(?:[.,?]+[^;"'<>()\[\]{}\s\x7f-\xff]+)*)?/;
        url=df.link.value
        if (!re.test(url)) {
            alert("<font face='verdana' size='1'>• tekst ikke tilgængelig - kontakt venligst <a href='mailto:graphia@graphia.net'>Graphia</a> •</font>");
            df.link.focus();
            return false
        }
Avatar billede bbe1379 Nybegynder
13. juni 2003 - 12:35 #9
hmmm, main skulle vist ikke have været med :)
Avatar billede bbe1379 Nybegynder
13. juni 2003 - 12:35 #10
main = mail
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