Hei sann, sliter litt med regex.
Jeg må validere at “domene.no” er gyldig.
Det er også viktig at ÆØÅ/æøå er tillatt. HTTPS, HTTP eller www. skal ikke være tillatt.
Setter pris på all hjelp ![]()
Hei sann, sliter litt med regex.
Jeg må validere at “domene.no” er gyldig.
Det er også viktig at ÆØÅ/æøå er tillatt. HTTPS, HTTP eller www. skal ikke være tillatt.
Setter pris på all hjelp ![]()
Du må nok være laaangt mer spesifikk, domenenavn er notorisk vanskelige å matche med regex.
For eksempel. i tillegg til “domene.no”, skal du matche ting som
“bbc.co.uk”
“köttvagnen.se”
“national.museum”
“hyphen-hyphen-hyphen.com”
“перезагрузкаопмо.рф”
“✪df.ws/e4f”
“domene.no:3000”
“domene.no@kjell”
Generelt, ettersom et domenenavn kan inneholde 63 tegn, ikke starte eller slutte med hyphen, må ha en tld uten spesielle tegn på minst to tegn osv. så funker denne til det meste
/^[a-zæøåA-ZÆØÅ0-9][a-zæøåA-ZÆØÅ0-9-]{1,61}[a-zæøåA-ZÆØÅ0-9]\.[a-zA-Z]{2,}$/
Denne eksluderer både “http/https/ws/ftp://” osv, samt “www”, men feiler også på ting som “bbc.co.uk”
Ja, beklager det - gikk litt fort i svingene.
Denne ser i utgangspunktet grei ut, men må også kunne tillate “bbc.co.uk” da det er et gyldig domene.
Og deri ligger jo problemet, for det er liten forskjell på
“www .dot.no” og “bbc.co.uk” …
det er samme antall punktum, slik at da må man tillate flere enn ett punktum, og sjekke spesielt for “www”
Nå er ikke jeg spesielt god på regex, og det er kanskje enklere måter å gjøre det på, men en slags “negative lookahead” for “www” samt en mulighet for et ekstra punktum, noe sånt
/^(?!www)[a-zæøåA-ZÆØÅ0-9][a-zæøåA-ZÆØÅ0-9-]{1,61}[a-zæøåA-ZÆØÅ0-9]\.[a-zA-Z]{2,}(\.[a-zA-Z]{2,})?$/
Takk, da kommer jeg litt lengre ![]()
Siden jeg også er avhengig at domenet har en DNS-record så har jeg to valideringspunkter.