Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

regular expression pattern za verifikaciju emaila

[es] :: Skript jezici :: regular expression pattern za verifikaciju emaila

[ Pregleda: 6449 | Odgovora: 18 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

borquee

Član broj: 10401
Poruke: 58
*.chello.hu



Profil

icon regular expression pattern za verifikaciju emaila23.08.2003. u 09:21 - pre 250 meseci
jel ima neko ispravniji regular expression pattern za verifikaciju emaila

do sada sam nasao:

(\w+[\w|\.|-]*\w+)(@\w+[\w|\.|-]*\w+\.\w{2,4})

ali se nije pokazao bas najbolje
 
Odgovor na temu

Gojko Vujovic
Amsterdam, NL

Administrator
Član broj: 1
Poruke: 13651



+165 Profil

icon Re: regular expression pattern za verifikaciju emaila23.08.2003. u 09:44 - pre 250 meseci
Samo da te upozorim da se upuštaš u opasnu oblast jer pisanje kompletnog rešenja za taj problem može da potraje i danima. Zavisi naravno dokle želiš da ideš, ali kompletan regexp za na primer neki MTA bi morao da prepoznaje dosta toga.. Daću ti samo primere validnih email adresa i to bez grešaka, koje svaki MTA mora da prepozna.. a zamisli tek ako korisnik unese i neke greške u unos a od tvog programa se očekuje da pravilno razazna šta je email adresa:

[email protected]
<[email protected]>
Gojko Vujovic <[email protected]>
"Gojko Vujovic", [email protected]
"Gojko Vujovic" <[email protected]>
Gojko <"gojko"@negde.com> (ova adresa se slabo koristi)

Ovo poslednje je preterivanje ali je savršeno ispravna email adresa, barem što se specifikacije tiče!

Imaš na netu dosta primera, u mastering regular expressions knjizi imaš i dva prilično kompleksna od 4 i 6 hiljada bajtova, a na tebi je da odlučiš koliko daleko želiš da ideš sa ovim..
 
Odgovor na temu

borquee

Član broj: 10401
Poruke: 58
*.chello.hu



Profil

icon Re: regular expression pattern za verifikaciju emaila23.08.2003. u 10:24 - pre 250 meseci
pa recimo da bi mi trebalo neko resenje koje nece ukociti server...
a od korisnika ocekujem da unese obican mail tipa

[email protected]

tj. da ne prihvati drugacije (bez navodnika i <>)
 
Odgovor na temu

-zombie-
Tomica Jovanovic
freelance programmer
ni.ac.yu

Član broj: 4128
Poruke: 3448
*.verat.net

Sajt: localhost


+5 Profil

icon Re: regular expression pattern za verifikaciju emaila24.08.2003. u 03:58 - pre 250 meseci
ma zeza te malo gojko..

evo ti moj predlog..

Code:

[^@]+               # username (ovo ovde je diskutabilno)
@
([\w-]+\.)+         # bar jedan domen, a možda i koji poddomen
w{2,4}              # TLD


jedino je diskutabilan ovaj username deo. elem, umesto negativne klase koja isključuje samo @, možeš da nabrojiš sve moguće karaktere, ali ja nisam siguran koji su sve dozvoljeni, pa koristim ovo..
 
Odgovor na temu

bOkIcA
Bojan Abramovic
Novi Sad

Član broj: 1808
Poruke: 520
*.metrohive.net

Sajt: www.bokica.com


Profil

icon Re: regular expression pattern za verifikaciju emaila24.08.2003. u 05:07 - pre 250 meseci
Code:
^[a-zA-Z][\w\.-]*[a-zA-Z0-9]@[a-zA-Z0-9][\w\.-]*[a-zA-Z0-9]\.[a-zA-Z][a-zA-Z\.]*[a-zA-Z]$


Ovo nije moj regexp (naleteo sam na njega), ali bi trebao da se dosta poklapa sa RFC 2822.

recimo, ovaj regexp ne resava mailove tipa: [email protected]


Da li ima raspolozenih da ucestvuju u pravljenju PRAVOG regexp-a po RFC2822 standardu?
Da zajedno proucimo standard i polako napravimo tacan regexp.
 
Odgovor na temu

bOkIcA
Bojan Abramovic
Novi Sad

Član broj: 1808
Poruke: 520
*.metrohive.net

Sajt: www.bokica.com


Profil

icon Re: regular expression pattern za verifikaciju emaila24.08.2003. u 05:55 - pre 250 meseci
Ma jok, kakav regexp, ko jos ima vremena da se zeza oko toga.

Ja trenutno koristim ovu klasu koja proverava da li postoji dns rekord i kaci se na mail server i proverava da li je email deliverable.
Treba li bolje???
 
Odgovor na temu

-zombie-
Tomica Jovanovic
freelance programmer
ni.ac.yu

Član broj: 4128
Poruke: 3448
*.verat.net

Sajt: localhost


+5 Profil

icon Re: regular expression pattern za verifikaciju emaila24.08.2003. u 09:04 - pre 250 meseci
jel se ti to sam sa sobom svađaš (imaš glasove u glavi) ili je neko seo za komp dok si ti bio ulogovan :P

nego, ovaj regex što je bokica broj 1 dao ne valja za ku^H^H ništa..

a ova klasa što je bokica 2 dao, u velikom broju slučajeva (na mnogim serverima/kombinacijama) ne radi, pa se ni ne vredi cimati...



da pojasnim, regex treba da služi samo kao prva provera čisto da se detektuje kada korisnik pogreši i na sajtu unese lošu mail adresu.


ako treba da se stvarno osigura da je to prava (validna) mail adresa koju čita taj korisnik, onda mu lepo pošaljete mail sa linkom za "overu" ili "potvrdu" mail adrese, i uživate..


zaključak: odradite regex proveru samo kao pred-proveru (za to može da posluži i onaj prosti regex koji sam ja dao), a ako vam je stvarno stalo da budete sigurni, pošaljite lepo mail na unesenu adresu.......
 
Odgovor na temu

bOkIcA
Bojan Abramovic
Novi Sad

Član broj: 1808
Poruke: 520
*.metrohive.net

Sajt: www.bokica.com


Profil

icon Re: regular expression pattern za verifikaciju emaila25.08.2003. u 01:41 - pre 250 meseci
jes, svadjao sam se ;-)

al sam to tek sad skontao
 
Odgovor na temu

bluesman

Član broj: 4505
Poruke: 1895
*.62.EUnet.yu



+1 Profil

icon Re: regular expression pattern za verifikaciju emaila25.08.2003. u 22:13 - pre 250 meseci
Evoj PHP funkcije koju ja korisitim:

Code:

function validateEmail($strEmail)

    return ereg('^[-!#$%&\'*+\\./0-9=?A-Z^_`a-z{|}~]+' .
        '@' .
        '[-!#$%&\'*+\\/0-9=?A-Z^_`a-z{|}~]+\.' .
        '[-!#$%&\'*+\\./0-9=?A-Z^_`a-z{|}~]+$',
        $strEmail);
}


pokazala se ok do sada. I u pravu je Gojko, dosta sam se zezao sa ovim, tako da i ne znam zasto Vam dajem tako olako :-)))
Goran Pilipović fka bluesman
 
Odgovor na temu

-zombie-
Tomica Jovanovic
freelance programmer
ni.ac.yu

Član broj: 4128
Poruke: 3448
*.verat.net

Sajt: localhost


+5 Profil

icon Re: regular expression pattern za verifikaciju emaila26.08.2003. u 10:30 - pre 250 meseci
izvini, ali ti si se baš trudio oko ovoga?

ja sam se oko moje potrudio nekih 15tak sekundi.. a radi bolje...

Code:

$a[]='[email protected]';
$a[]='u@d..';
$a[]='u@_....';
$a[]='u@=`~!$%^&*-._=+';

foreach ($a as $e) {
    echo "<br/>$e: ".(0+validateEmail($e));
}


objasni mi molim te kako su ove četri ispravne email adrese?!? (pozivam tvoju f-ju).


napomena: ni moj regex nije idealan, pored opisanog problema sa username, prolaze i adrese tipa [email protected], što mislim da nije legalno ime domena, ali to ionako rešava slanje maila za verifikaciju...

 
Odgovor na temu

bOkIcA
Bojan Abramovic
Novi Sad

Član broj: 1808
Poruke: 520
*.metrohive.net

Sajt: www.bokica.com


Profil

icon Re: regular expression pattern za verifikaciju emaila26.08.2003. u 15:05 - pre 250 meseci
Code:
<?php

$email[] = "[email protected]";
$email[] = "[email protected]";
$email[] = "1nes [email protected]";
$email[] = "[email protected]";
$email[] = "[email protected]";
$email[] = "[email protected]";
$email[] = "[email protected]";
$email[] = "[email protected]";

foreach ($email as $trt){
     echo "Email '$trt' " . ((is_email($trt))?"":"ni") . "je validan.<br>\r\n";
}

function is_email($email) {

     $eml_pocetak = "[a-zA-Z0-9_][a-zA-Z0-9-_.]*[a-zA-Z0-9_.]@";
     $eml_kraj = "(([a-zA-Z0-9_][a-zA-Z0-9-_]*[a-zA-Z0-9_][.])+([a-zA-Z]{2,6}))";
     $eml_ip = "((\b([01]?[0-9][0-9]?|2[0-4][0-9]|25[0-5])\.){3}\b([01]?[0-9][0-9]?|2[0-4][0-9]|25[0-5]))";
    
     $eml_regexp = "/^$eml_pocetak($eml_kraj|$eml_ip)$/";

     if (preg_match($eml_regexp,$email))
          return true;

     return false;
}
?>

Code:
// kompletan regexp (u jednom redu)
// $reg = "/^[a-zA-Z0-9_][a-zA-Z0-9-_.]*[a-zA-Z0-9_.]@((([a-zA-Z0-9_][a-zA-Z0-9-_]*[a-zA-Z0-9_][.])+([a-zA-Z]{2,6}))|((\b([01]?[0-9][0-9]?|2[0-4][0-9]|25[0-5])\.){3}\b([01]?[0-9][0-9]?|2[0-4][0-9]|25[0-5])))$/"

Ajd testirajte, zanima me jesam li blizu.
(voleo bih kad bi neko mogao da testira ovo na nekoj velikoj mailing listi)
 
Odgovor na temu

bluesman

Član broj: 4505
Poruke: 1895
*.197.EUnet.yu



+1 Profil

icon Re: regular expression pattern za verifikaciju emaila27.08.2003. u 02:14 - pre 250 meseci
Citat:
-zombie-:
izvini, ali ti si se baš trudio oko ovoga?
ja sam se oko moje potrudio nekih 15tak sekundi.. a radi bolje...


Hej, super si ti decko, samo si mnogo napet, nauci da se opustis malo. Procitaj jos jednom sta sam napisao i obrati paznju na par karaktera na kraju recenice.

Kladim se da i ja mogu da radim nesto brze od tebe, eto ja mogu da popijem 0.7 L piva za 11 sekundi, tako sam jednom i pobedio na takmicenju u brzom ispijanju piva, hoces da se oprobas samnom? :-)))

p.s. Samo gledam tvoje poruke u poslednje vreme i odaju utisak jednog vrlo nervoznog coveka. Suvise si mlad za takav attitude, opusti se malo - nije u pitanju zivot i smrt za svaku glupost.
Goran Pilipović fka bluesman
 
Odgovor na temu

CONFIQ
♫♪♥♪♫

Član broj: 4218
Poruke: 1994
*.red.bezeqint.net

ICQ: 82327428


+10 Profil

icon Re: regular expression pattern za verifikaciju emaila27.08.2003. u 02:31 - pre 250 meseci
Pa ne, samo smešno zvuči „jako teško se opraštam od nje” kao da... :Đ

Anyway, ne znam zašto su svi napisali u PHPu, kao da Javascript ne bi mogao da odradi identičan posao. :P A što se tiče PHP-a, dečko može da nađe neku class-u koja će da odradi taj posao za njega tako da ne mora da izmišlja toplu vodu. Doduše i ja ponekad pišem nešto što već postoji classa za to...

~Say... My 2 cents
 
Odgovor na temu

bluesman

Član broj: 4505
Poruke: 1895
*.193.EUnet.yu



+1 Profil

icon Re: regular expression pattern za verifikaciju emaila27.08.2003. u 11:22 - pre 250 meseci
pa i treba smesno da zvuci...
Goran Pilipović fka bluesman
 
Odgovor na temu

-zombie-
Tomica Jovanovic
freelance programmer
ni.ac.yu

Član broj: 4128
Poruke: 3448
*.verat.net

Sajt: localhost


+5 Profil

icon Re: regular expression pattern za verifikaciju emaila27.08.2003. u 12:11 - pre 250 meseci
da.. sorry.. my bad.. nisam provalio da se zezaš.. kao što confiq reče, smešno je zvučalo, ali (priznaj ;) nije delovalo da se ti šališ :-P

ma šta ću.. ja ionako odavno pričam da su ovi pixeli na ekranu suviše siromašni da bi lepo iskazali ono što je "pisac time 'teo da kaže..." (uz sve smajlije i druga čuda moderne tehnike koje izmisle ;)


ali za piwo ti ne verujem.. za to sam spreman i da se kladim!! :D


a za napetost, šta ćeš.. vreme odmora, a ja nikad više posla.. pa onda dođem ovde da se iskalim i ispljujem svakog kog stignem.. :-Pp

a za osale "poruke u poslednje vreme".. hm.. na šta misliš.. nisam primetio (da je neko drugi primetio ;)))


u svakom slučaju, imaš piwo od mene prvom prilikom.. poz :x)
 
Odgovor na temu

bluesman

Član broj: 4505
Poruke: 1895
*.214.EUnet.yu



+1 Profil

icon Re: regular expression pattern za verifikaciju emaila27.08.2003. u 15:05 - pre 250 meseci
Ma samo se opusti... :-))

Nego, bolje da verujes za pivo, i to je bilo ono... kvalifikacije, 1/4 finale, 1/2 finale, finale, pa smo u finalu bili "draw" pa smo morali jos jednom, a konkurencija internacionalna (ispostavilo se da englezi vise pricaju da piju nego sto stvarno mogu da piju) ... skoro sam se onesvestio posle. A sto se ponude tice, ko izgubi moda odmah da popije jos jednu i plati sve. ok? Ali 'ajde da ne privatizujemo (opet) ovo sve ...
Goran Pilipović fka bluesman
 
Odgovor na temu

CtrlAltDel
Beograd

Član broj: 96286
Poruke: 325
*.ADSL.neobee.net.



Profil

icon Re: regular expression pattern za verifikaciju emaila20.06.2006. u 14:45 - pre 216 meseci
sto se tice regex-a i maila ja koristim ovo:

if(!eregi("^[[:alnum:]][a-z0-9_.-]*@[a-z0-9.-]+\.[a-z]{2,2}$", '[email protected]')) {
echo "Neispravan mail";
};
 
Odgovor na temu

Gojko Vujovic
Amsterdam, NL

Administrator
Član broj: 1
Poruke: 13651



+165 Profil

icon Re: regular expression pattern za verifikaciju emaila20.06.2006. u 15:01 - pre 216 meseci
Ne valja.

Prolazi ti: [email protected] (neispravan domen)
Ne prolazi ti: [email protected] (gmail labels, ispravan email)
 
Odgovor na temu

Ivan.Markovic

Član broj: 97763
Poruke: 330

Sajt: security-net.biz


+19 Profil

icon Re: regular expression pattern za verifikaciju emaila20.06.2006. u 16:41 - pre 216 meseci
Mozda ovde http://www.scriptarchive.com/d...&c=txt&f=FormMail%2Epl nadjete resenje.
“If you think you are too small to make a difference, try sleeping with a mosquito.” - Dalai Lama
XIV
 
Odgovor na temu

[es] :: Skript jezici :: regular expression pattern za verifikaciju emaila

[ Pregleda: 6449 | Odgovora: 18 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.