/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Simpel email-validering
Fra : Rasmus Nielsen


Dato : 13-09-03 19:05

Hej,

Har nogen et simpelt valideringsscript, der tjekke om en tekststreng er en
email adresse (altså om der er et @ osv.). Det behøver ikke tjekke for alle
mulige ting, som dem jeg kan finde på netcoders.dk gør...

--
Venlig hilsen, Rasmus Nielsen.



 
 
Jørn Andersen (13-09-2003)
Kommentar
Fra : Jørn Andersen


Dato : 13-09-03 19:45

On Sat, 13 Sep 2003 20:05:16 +0200, "Rasmus Nielsen"
<postmaster@rasmusn.dk> wrote:

>Har nogen et simpelt valideringsscript, der tjekke om en tekststreng er en
>email adresse (altså om der er et @ osv.).

Nu ved jeg ikke, hvad du mener med "osv."
- men hvis du kun vil teste for "@", så:

strEmail = "postmaster@rasmusn.dk"
If InStr(strEmail, "@") > 0 Then
' Den indeholder "@"
Else
' Den indeholder ikke "@"
End If

Forbehold: strEmail må ikke være Null

Good luck!

--
Jørn Andersen,
Brønshøj

Jens Gyldenkærne Cla~ (14-09-2003)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 14-09-03 10:12

Jørn Andersen skrev:

>>Har nogen et simpelt valideringsscript, der tjekke om en
>>tekststreng er en email adresse (altså om der er et @ osv.).

Der kan formentlig findes adskillige ved en googling. Man kan lave
ret avancerede udgaver ved hjælp af regulære udtryk (regex).


> If InStr(strEmail, "@") > 0 Then

> Forbehold: strEmail må ikke være Null

Forbeholdet kan fjernes ved sammensætning med "":

   If InStr(strEmail & "", "@") > 0 Then
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

kayl (14-09-2003)
Kommentar
Fra : kayl


Dato : 14-09-03 14:32


"Rasmus Nielsen" <postmaster@rasmusn.dk> wrote in message
news:bjvm3d$nq7v2$1@ID-176586.news.uni-berlin.de...
> Hej,
>
> Har nogen et simpelt valideringsscript, der tjekke om en tekststreng er en
> email adresse (altså om der er et @ osv.). Det behøver ikke tjekke for
alle
> mulige ting, som dem jeg kan finde på netcoders.dk gør...


Function Valider(Email)

'
' Kaldes med Valider("email@adresse.dk")
' Returnerer True hvis adressen er gyldig, False hvis den er ugyldig
' Yderligere kendte domeane fejl kan tilfoejes i array (pkt. 11)
' Yderligere kendte domeane endelses fejl kan tilfoejes i array (pkt. 12)
'
' Scriptet maa benyttes frit, men ikke til videresalg

Dim Snabler, i, UgyldigeDomaener, Domaene, UgyldigeEndelser, Endelse

Valider = True

' (1) Check laengde
'---------------------------------------------------------------------------
---------------

If (Len(Email) < 5) Then
Valider = False

' (2) Skal indeholde @
'---------------------------------------------------------------------------
------------

Elseif (InStr(Email,"@") = 0) Then
Valider = False

' (3) Undgaa "@." og ".@"
'---------------------------------------------------------------------------
---------

Elseif ((InStr(Email,"@.") <> 0) OR (InStr(Email,".@") <> 0)) Then
Valider = False

' (4) Check om der er noget foran @
'--------------------------------------------------------------------------

Elseif (Len(Left(Email,InStr(Email,"@") - 1)) = 0) Then
Valider = False

' (5) Minimum 1 "."
'---------------------------------------------------------------------------
---------------

Elseif (InStr(Email,".") = 0) Then
Valider = False

' (6) Max 3 tegn efter sidste "."
'---------------------------------------------------------------------------
-

Elseif (Len(Email) - InStrRev(Email,".") > 3) Then
Valider = False

' (7) Undgaa ".."
'---------------------------------------------------------------------------
-----------------

Elseif (InStr(Email,"..") <> 0) Then
Valider = False

' (8) Min 2 tegn efter sidste "."
'---------------------------------------------------------------------------
-

Elseif (Len(Email) - InStrRev(Email,".") < 2) Then
Valider = False

' (9) Ingen "_" efter "@"
'---------------------------------------------------------------------------
---------

Elseif ((InStr(Email,"_") <> 0) AND (InStrRev(Email,"_") >
InStrRev(Email,"@"))) Then
Valider = False

Else

' (10) Tjek for flere "@"
'---------------------------------------------------------------------------
----------
Snabler = 0

FOR i = 1 TO Len(Email)
If Mid(Email,i,1) = "@" Then
Snabler = Snabler + 1
End If
NEXT

If Snabler > 1 Then
Valider = False
End If

' (11) Check domaene ud fra array
'---------------------------------------------------------------------------
-

UgyldigeDomaener =
Array("xxhotmail.com","xxjupiipost.dk","xxforom.dk","xxfurom.dk")
Domaene = Right(Email,(Len(Email) - InStrRev(Email,"@")))

FOR i = 0 TO UBound(UgyldigeDomaener)
If Domaene = UgyldigeDomaener(i) Then
Valider = False
End If
NEXT

' (12) Ret de taaber der skriver forkerte endelser
'-----------------------------------------------------------

UgyldigeEndelser = Array("om","ocm","kd","et","co")
Endelse = Right(Email,(Len(Email) - InStrRev(Email,".")))

FOR i = 0 TO UBound(UgyldigeEndelser)
If Endelse = UgyldigeEndelser(i) Then
Valider = False
End If
NEXT

' (13) Check hver enkelt tegn
'---------------------------------------------------------------------------
-----

FOR i = 1 TO Len(Email)
If NOT IsNumeric(Mid(Email,i,1)) AND _
(LCase(Mid(Email,i,1)) < "a" OR _
LCase(Mid(Email,i,1)) > "z") AND _
Mid(Email,i,1) <> "_" AND _
Mid(Email,i,1) <> "." AND _
Mid(Email,i,1) <> "@" AND _
Mid(Email,i,1) <> "-" Then
Valider = False
End If
NEXT

End If

End Function

hilsen kayl

www.adderweb.com



Jørn Andersen (14-09-2003)
Kommentar
Fra : Jørn Andersen


Dato : 14-09-03 15:05

On Sun, 14 Sep 2003 15:32:23 +0200, "kayl" <news@kaylarsen.com> wrote:

>' (6) Max 3 tegn efter sidste "."

Skal nok rettes til 4 med de seneste TLD'er

--
Jørn Andersen,
Brønshøj

Jens Gyldenkærne Cla~ (14-09-2003)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 14-09-03 17:30

Jørn Andersen skrev:

>>' (6) Max 3 tegn efter sidste "."
>
> Skal nok rettes til 4 med de seneste TLD'er

Det kan vist ikke gøre det. Et af de nye TLD'er hedder .museum

Jeg fandt lige en emailvalidator der tager højde for de nye
TLD'er. Den er skrevet til Java - så vidt jeg da kan se - men
bør kunne modificeres til også at virke som javascript.

<http://www.omnigroup.com/mailman/archive/webobjects-dev/2003-January/030520.html>
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Søg
Reklame
Statistik
Spørgsmål : 177501
Tips : 31968
Nyheder : 719565
Indlæg : 6408527
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste