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

Nalazenje eMail adrese u stringu

[es] :: .NET :: Nalazenje eMail adrese u stringu

[ Pregleda: 2021 | Odgovora: 16 ]

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

bjeka
Milan Bjekic
Stari Zednik

Član broj: 74130
Poruke: 9
*.ptt.yu.



Profil

icon Nalazenje eMail adrese u stringu23.07.2006. u 23:24

Kako pomocu c# da iz stringa (koji sadrzi neki tekst u kojem se nalazi izmedju ostalog i eMail adresa ) "izvadim" eMail adresu i smestim je u neku promenljivu.?
npr.
string sPocetni="bla, bla, bla... mojaemail@adresa.xxx bla bla bla..."; //pocetni string
string sIzvadjenaAdresa="mojaemail@adresa.xxx"; //zeljeni rezultat
23.07.2006. u 23:24 

NrmMyth
Split, Kaštela

Član broj: 63456
Poruke: 839
*.cmu.carnet.hr.



Profil

icon Re: Nalazenje eMail adrese u stringu24.07.2006. u 01:46
Nadji '@' i primjeti da je tvoj email od prvog lijevog razmaka do prvog desnog razmaka od znaka '@'
24.07.2006. u 01:46 

VerbatimBOT
Aleksandar Dragosavac
Senior .NET Developer
Serbia, Belgrade

Član broj: 84129
Poruke: 224
*.kalik.info.

Sajt: https://www.xing.com/prof..


Profil

icon Re: Nalazenje eMail adrese u stringu24.07.2006. u 02:11
Naravno, pravilo je da levo od @ znaka mogu biti bilo koji karakter, a desno mora da ima bar jednu tačku i da posle te tačke ima nešto (.com, .org itd)
Winners never quit, quitters never win.
24.07.2006. u 02:11 

DjoleReject
Djordje Knezevic
Zvezdara

Član broj: 85258
Poruke: 308
*.ptt.yu.



Profil

icon Re: Nalazenje eMail adrese u stringu24.07.2006. u 02:34
MA briga ga za tacku. dodje do @ pa se vrati do prvog belog, pa racuna da je adresa od tog slova do sledeceg prvog belog...
De si Deda...
24.07.2006. u 02:34 

Oliver Klaćik
Vice President, Thunder Road Software Inc.
Stara Pazova

Član broj: 34059
Poruke: 242
80.93.231.*

Sajt: www.thunderroadsoftware.c..


Profil

icon Re: Nalazenje eMail adrese u stringu24.07.2006. u 08:45
Najlakše je da koristiš Regular Expressions...

Code:

            // Define a regular expression for repeated words.
            Regex rx = new Regex(@"\w+@\w+.\w+",
              RegexOptions.Compiled | RegexOptions.IgnoreCase);

            // Define a test string.        
            string text = TvojUlazniString;

            // Find matches.
            MatchCollection matches = rx.Matches(text);

            // Report on each match.
            foreach (Match match in matches)
            {
                string emailAdresa = match.Value;
            }

Oliver 'FAQ' Klaćik
24.07.2006. u 08:45 

bjeka
Milan Bjekic
Stari Zednik

Član broj: 74130
Poruke: 9
*.ptt.yu.



Profil

icon Re: Nalazenje eMail adrese u stringu25.07.2006. u 01:59
Uspeo sam radi mi onako kako je rekao Oliver Klacik, hvala vam puno.
Samo treba da se koristi "using System.Text.RegularExpressions;"
radi i za stringove gde nije ispred i iza adrese razmak, npr. <a href="mailto:mojMail@xxx.xxx">anfragen</a>
25.07.2006. u 01:59 

NrmMyth
Split, Kaštela

Član broj: 63456
Poruke: 839
*.cmu.carnet.hr.



Profil

icon Re: Nalazenje eMail adrese u stringu25.07.2006. u 06:54
Je, ali je znak koji se ne moze naci u samoj email adresi, pa se ne mijenja nimalo algoritam.
25.07.2006. u 06:54 

misk0
.: Lugano :. _.: CH :.

SuperModerator
Član broj: 634
Poruke: 2436
*.adsl.ticino.com.

ICQ: 46802502


Profil

icon Re: Nalazenje eMail adrese u stringu25.07.2006. u 10:17
Buduci da u e-mail adresi, tj u korisnickom imenu moze da bude tacka (.) modifikovao bih
Code:

 Regex rx = new Regex(@"\w+@\w+.\w+", RegexOptions.Compiled | RegexOptions.IgnoreCase);


u

Code:

 Regex rx = new Regex(@"[A-Za-z0-9_.]+@\w+.\w+", RegexOptions.Compiled | RegexOptions.IgnoreCase);



Mada nije ni ovo konacno rjesenje jer neko ima adresu recimo ime.prezime@guest.arnes.si tj postoje 2 tacke u imenenu domena.
Ja sam nov sa regexp-ima pa mi treba vishe treninga i vjezbe da skontam, kad skontam napisacu :)

:: Nemoj se svadjati sa budalom, ljudi cesto nece primjetiti razliku ::
25.07.2006. u 10:17 

misk0
.: Lugano :. _.: CH :.

SuperModerator
Član broj: 634
Poruke: 2436
*.adsl.ticino.com.

ICQ: 46802502


Profil

icon Re: Nalazenje eMail adrese u stringu25.07.2006. u 10:38
Mislim da je ovo dobitna kombinacija

Code:
"[A-z0-9_.-]+@[A-z0-9_.-]+[A-z]{2,4}"



:: Nemoj se svadjati sa budalom, ljudi cesto nece primjetiti razliku ::
25.07.2006. u 10:38 

mmix
Miljan Mitrovic
Software Architect
Pancevo, Srbija

SuperModerator
Član broj: 17944
Poruke: 2407
69.17.213.*



Profil

icon Re: Nalazenje eMail adrese u stringu25.07.2006. u 12:24
Citat:
misk0: Mislim da je ovo dobitna kombinacija
Code:
"[A-z0-9_.-]+@[A-z0-9_.-]+[A-z]{2,4}"

Nope, pronaci ce npr adresu test@domain..com sto nije validna email adresa, dalje postoje root domeni sa vise od 4 karaktera (.museum, npr). Dalje, \w moze da ti menja [A-Za-z0-9_] a i account adrese moze da sadrzi %

Ovo je malo ispravnije resenje:

Code:

[\w.%-]+@([\w-]+\.)+[\w]{2,6}


Naravno, ni ovo resenje nije potpuno, u attachmentu imas regular expression koji je 100% kompatibilan sa RFC standardom za email adresu, ali naravno niko normalan to ne bi koristio (a i verovatno bi bilo uzasno sporo, nisam probao ). Ko sto rece moj nekadasnji profa, regex je uvek kompromis izmedju egzaktnosti i prakticnosti


▪ The quicker a phone is answered in sales, the slower it's answered in customer services - Brownridge's Law
▪ Democracy is a device that ensures we shall be governed no better than we deserve - George Bernard Shaw
▪ To err is human--and to blame it on a computer is even more so - Robert Orben
Prikačeni fajlovi
25.07.2006. u 12:24 

misk0
.: Lugano :. _.: CH :.

SuperModerator
Član broj: 634
Poruke: 2436
*.adsl.ticino.com.

ICQ: 46802502


Profil

icon Re: Nalazenje eMail adrese u stringu25.07.2006. u 12:49
Da, ja sam skratio izraz misleci da cu ga napraviti jednostavniji a zaboravio sam taj dio sa ..
Ovaj RFC compatibile je ql, ali nema sanse da skontam sta pishe tamo.

:: Nemoj se svadjati sa budalom, ljudi cesto nece primjetiti razliku ::
25.07.2006. u 12:49 

Paimonia
Nikola Tulimirović
Banjica

Član broj: 99942
Poruke: 41
*.xdsl.beograd.com.

ICQ: 169128252
Sajt: www.sviposlovi.com


Profil

icon Re: Nalazenje eMail adrese u stringu29.07.2006. u 19:14
Auh... dokle je ovo stiglo? Mislim da ni najsloženije ne bi trebalo da bude sporo...
Ideš li ženama, ponesi bič! - F. W. Nietzsche
www.sviposlovi.com
www.thelandofintellect.org
29.07.2006. u 19:14 

CtrlAltDel
Milos Sretenovic
Beograd

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

Sajt: www.pixart.co.yu


Profil

icon Re: Nalazenje eMail adrese u stringu29.07.2006. u 19:28
^[[:alnum:]][a-z0-9_.-]*@[a-z0-9.-]+\.[a-z]{2,3}$
29.07.2006. u 19:28 

sale83
Aleksandar Ervacanin
Full Time Student & Full Time Zaposlen ( IT Suppo..
Sydney

Član broj: 41625
Poruke: 617
*.ispone.net.au.



Profil

icon Re: Nalazenje eMail adrese u stringu30.07.2006. u 01:59
@mmix

Ovo sto si napisao:

Code:

[\w.%-]+@([\w-]+\.)+[\w]{2,6}


Nije dobro resenje kako sto si i sam rekao...

Po tome dddd@dddd.ddd je EMAIL :)


@CtrlAltDel

Sve mi se cini da je tvoj RegExp malo neispravan :)



Recimo evo sta meni pada napamet:

Code:

' neka Funkcija koja ce da vrati emial adresu
' mada ni ovo nije neko 100 % resenje ali moze lako da se izvede....

    Public Function VratiEmail(ByVal str As String) As String
        str = Regex.Replace(str, "[^\w\.@-_]", " ")
        Dim EmailArray() As String = Split(str)
        Dim LastNonEmpty As Integer = -1
        For i As Integer = 0 To EmailArray.Length - 1
            If EmailArray(i) <> "" And (InStr(EmailArray(i), "@") And InStr(EmailArray(i), ".")) Then
                LastNonEmpty += 1
                EmailArray(LastNonEmpty) = EmailArray(i)
            End If
        Next
        Return EmailArray(LastNonEmpty)
    End Function




Znaci imamo ovako nesto:

Code:


        Dim str As String = "dddd ddddd dddd dd@d.dd >nekiemial@sajt.com.au/> sasasas sas@dfs fdf"

        'Treba da vrati nekiemial@sajt.com.au
        MsgBox(VratiEmail(str))

'Jedini problem je ako se nadje jos jedan email ili kombinacija stringa gde ima @ i .




Mada funkcija moze da se napravi da vrati sve tako reci email adrese a kasnije se proveri ispravnost te email adrese :)


Poz
sale

PHP/MySQl/SQL/VB.NET/JAVA/JSP/Servlet/MSSQLServer/MSAccess/Perl
COBOL/JCL/CICS -> IBM Mainframe
Nortel/Cisco/Sidewinder
30.07.2006. u 01:59 

CtrlAltDel
Milos Sretenovic
Beograd

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

Sajt: www.pixart.co.yu


Profil

icon Re: Nalazenje eMail adrese u stringu30.07.2006. u 12:57
hm, ja ovo koristim u php funkciji za proveru unosa mail-a...

u stvari jes malo neispravan , propusta jednu gresku...
30.07.2006. u 12:57 

misk0
.: Lugano :. _.: CH :.

SuperModerator
Član broj: 634
Poruke: 2436
*.adsl.ticino.com.

ICQ: 46802502


Profil

icon Re: Nalazenje eMail adrese u stringu30.07.2006. u 14:21
Citat:
CtrlAltDel: hm, ja ovo koristim u php funkciji za proveru unosa mail-a...
u stvari jes malo neispravan , propusta jednu gresku...


Pitanje je bilo kako izvuci ispravan e-mail iz texta, a ne 'da li je upisan string e-mail'. Tvoj Regexp ima ^ i $ sto su pocetak i kraj stringa, znaci ne mozes mu servirati citav text a da on odatle izvuce string.

:: Nemoj se svadjati sa budalom, ljudi cesto nece primjetiti razliku ::
30.07.2006. u 14:21 

misk0
.: Lugano :. _.: CH :.

SuperModerator
Član broj: 634
Poruke: 2436
*.adsl.ticino.com.

ICQ: 46802502


Profil

icon Re: Nalazenje eMail adrese u stringu30.07.2006. u 14:34
Citat:
sale83: @mmix

Ovo sto si napisao:

Code:

[\w.%-]+@([\w-]+\.)+[\w]{2,6}


Nije dobro resenje kako sto si i sam rekao...

Po tome dddd@dddd.ddd je EMAIL :)


Iako nisam koristio VB iskompajlirao sam tvoj kod i njemu prolazi isti e-mail. Znaci da bi imao sigurno ispravan email, morao bi osim toga da ga izolujes kao string, da provjeris da li domen postoji i da provjeris da li username postoji. To iskljucuje regexp-e iz dalje priche.
Mislim da je ovde bilo bitnije izvuci ispravnu e-mail sintaksu sto prethodni regexp radi.


:: Nemoj se svadjati sa budalom, ljudi cesto nece primjetiti razliku ::
Prikačeni fajlovi
30.07.2006. u 14:34 

[es] :: .NET :: Nalazenje eMail adrese u stringu

[ Pregleda: 2021 | Odgovora: 16 ]

Postavi temu Odgovori

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