Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Extrahera epostadresser

Postades av 2006-10-05 08:06:19 - Tomas Näslund, i forum access, Tråden har 3 Kommentarer och lästs av 1063 personer

Jag behöver plocka ut epostadresser ur ett fält där det också finns annan text, och det kan också finnas flera adresser i samma post, och då måste samtliga adresser plockas ut.

Så här kan datat se ut:
"John Doe
john.doe@anyserver.com
Phone: +1 12 23456
Jim.jimson@jimserver.com"

Det jag behöver få ut av funktionen är adresserna i en sträng för att användas för att skicka mail via VBA: "john.doe@anyserver.com;Jim.jimson@jimserver.com"

Någon som har en bra lösning för det hela?

//Tomas


Svara

Sv: Extrahera epostadresser

Postades av 2006-10-05 08:57:36 - Peter Larsson

Läs om reguljära uttryck.
Det löser problemet på ett smidigt sätt.


Svara

Sv:Extrahera epostadresser

Postades av 2006-10-05 10:04:16 - Per Hultqvist

Jag behövde själv motsvarande kodsnutt så håll till godo :

        private void button1_Click(object sender, EventArgs e)
        {
            string epost = @"([\w-]+\.)*[\w-]+\@([\w-]+\.)+[a-zA-Z]{2,}";
            Regex repost = new Regex(epost, RegexOptions.IgnoreCase);
            MatchCollection mc = repost.Matches(textBox1.Text);
            List<string> adresses = new List<string>();
            foreach (Match match in mc)
                if (!adresses.Contains(match.ToString()))
                {
                    adresses.Add(match.ToString());
                    textBox2.AppendText(match.ToString() + ";");
                }
        }

Två textboxar och en knapp på ett formulär är vad som behövs för att testköra...Jag använder en generisk stränglista för att ta bort dubletter (kräver ramverk 2.0, vs.net 2005). Ersätt med System.Collections.HashTable eller liknande om du använder 1.1 eller 1.0.


Svara

Sv: Extrahera epostadresser

Postades av 2006-10-05 10:16:28 - Per Hultqvist

Äsch jag gick ett steg längre. Här kommer en EmailCollection-klass:

    public class EmailCollection : System.Collections.Generic.List<string>
    {
        public const string EMAIL_REGEX = @"([\w-]+\.)*[\w-]+\@([\w-]+\.)+[a-zA-Z]{2,}";

        public EmailCollection()
        {
        }

        public EmailCollection ParseText(string Text)
        {
            Regex reg_email = new Regex(EMAIL_REGEX, RegexOptions.IgnoreCase);
            MatchCollection mc = reg_email.Matches(Text);            
            foreach (Match match in mc)
                if (!base.Contains(match.ToString()))
                    base.Add(match.ToString());

            return this;
        }

        public new EmailCollection Add(string Address)
        {
            Regex reg_email = new Regex(EMAIL_REGEX, RegexOptions.IgnoreCase);
            if (!reg_email.Match(Address).Success)
                throw new ArgumentException("Illegal email address!","Address");

            if (!base.Contains(Address)) base.Add(Address);

            return this;
        }

        public override string ToString()
        {
            string list="";
            foreach (string email in this)
                list += email + ";";

            return list;
        }
    }

Så här använder du klassen :
        private void button1_Click(object sender, EventArgs e)
        {
            EmailCollection ec = new EmailCollection();

            textBox2.Text=ec.ParseText(textBox1.Text).Add(@"kalle@kalle.se").ToString();
        }



Svara

Nyligen

  • 08:28 Butiksskyltar: Hur upplever utbude
  • 22:31 Slappna av
  • 19:55 kick-off med fokus på hälsa?
  • 19:53 kick-off med fokus på hälsa?
  • 16:24 Föreslå en skönhetsklinik online
  • 16:23 Föreslå en skönhetsklinik online
  • 18:42 Hvor finder man håndlavede lamper
  • 18:41 Hvor finder man håndlavede lamper

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 768
27 960
271 761
393
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies