myGully.com Boerse.SH - BOERSE.AM - BOERSE.IO - BOERSE.IM Boerse.BZ .TO Nachfolger
Zurück   myGully.com > Computer & Technik > Programmierung
Seite neu laden

C# Anfänger Email Abfrage

Willkommen

myGully

Links

Forum

 
Antwort
Themen-Optionen Ansicht
Ungelesen 04.10.12, 10:36   #1
SpeedCrew
Anfänger
 
Registriert seit: Oct 2008
Beiträge: 9
Bedankt: 3
SpeedCrew ist noch neu hier! | 0 Respekt Punkte
Standard C# Anfänger Email Abfrage

Guten tag liebe Community, ich habe gerade angefangen mit C# und wollte gerne eine TextBox.Text überprüfen ob eine email drinne steht und nicht nur hd92z2gbdiz2t87 irg welche zeichen wie kann ich das anstellen ? Am besten so einfach wie mögich.

if(TextBox.Text == (Emailüberprüfen)
{
MessageBox.Show("Email Richtig")
}
else
{
MessageBox.Show("Email Falscg")
}
SpeedCrew ist offline   Mit Zitat antworten
Ungelesen 04.10.12, 10:44   #2
XxeragonxX
Erfahrener Newbie
 
Registriert seit: Jul 2010
Beiträge: 191
Bedankt: 34
XxeragonxX ist noch neu hier! | 9 Respekt Punkte
Standard

Naja, weiß jetzt nicht wie die Syntax in C# ansieht. Ich würde den String jedoch in ein Char-Array speichern und überprüfen ob dieses ein Punkt, ein @ bzw ein Länder kürzel enthält (z.B .de, dies wird man jedoch besser mit dem vorhandenen String testen können). Wenn du es ganz genau machen willst, kannst du natürlich auch die Charfächer auf die Anzahl enthaltener Zahlen überprüfen und ab einer gewissen anzahl sagen, dass ist keine Email mehr, jedoch ist dies denke ich nicht nötig.
XxeragonxX ist offline   Mit Zitat antworten
Ungelesen 04.10.12, 10:53   #3
SpeedCrew
Anfänger
 
Registriert seit: Oct 2008
Beiträge: 9
Bedankt: 3
SpeedCrew ist noch neu hier! | 0 Respekt Punkte
Standard

Könnte man das vl noch ein beispiel code posten wie geschrieben bin ein anfänger :P
SpeedCrew ist offline   Mit Zitat antworten
Ungelesen 04.10.12, 10:58   #4
XxeragonxX
Erfahrener Newbie
 
Registriert seit: Jul 2010
Beiträge: 191
Bedankt: 34
XxeragonxX ist noch neu hier! | 9 Respekt Punkte
Standard

PHP-Code:
    public boolean emailTesten(String s){
        
char[] charArray s.toCharArray();
        
        for (
int i 0charArray.lengthi++) {
            if(
charArray[i] == '@'){
                
charArray.length -1// Wenn kein "." gefunden wurde, geht er nach folendung 
                                                                  //  der For schleife sofort aus der Methode und return false
                
for (int j 0charArray.lengthj++) {
                    if(
charArray[j] == '.'){

                        return 
true;

                    }
                }
            }
        }
        return 
false
    } 

Dies ist jetzt Javacode. Ich weiß nicht in wieweit du das in C# verwenden kannst.
Falls du Fragen zu dem Code hast, einfach Fragen.

So naja, man überprüft jetzt nur ob ein @ bzw. ein . vorhanden sind. Es wird aber nicht geprüft wo sich diese befinden. Wenn du es noch genauere haben willst, wäre es gut wenn du dich selbst drann setzt und dann anschließend bei Fragen, Lösungen und Problemen dich hier wieder meldest.
XxeragonxX ist offline   Mit Zitat antworten
Ungelesen 04.10.12, 12:22   #5
m9716
Anfänger
 
Registriert seit: Dec 2009
Beiträge: 28
Bedankt: 95
m9716 ist noch neu hier! | 0 Respekt Punkte
Standard

Du hast 2 Möglichkeiten:

1. manuell die E-Mail-Adresse zerlegen und dabei ihre Teile getrennt prüfen und zwar:
Code:
<localpart> <@> <domain inkl evtl subdomains und tld>
Ein einfacher unvollständiger Code könnte so aussehen (auch Java):
PHP-Code:
public class EMailValidator {

    public 
boolean isValidEmail(final String mail) {
        if (
mail == null) {
            return 
false;
        }
        final 
String[] parts mail.split("@");
        if (
parts.length != 2) {
            return 
false;
        }
        return 
isValidLocalPart(parts[0]) && isValidDomainPart(parts[1]);
    }

    private 
boolean isValidLocalPart(final String part) {
        if (
part.isEmpty()) {
            return 
false;
        }
        
// TODO check local part
        
return false;
    }

    private 
boolean isValidDomainPart(final String part) {
        if (
part.isEmpty()) {
            return 
false;
        }
        final 
String[] domains part.split(".");
        if (
domains.length 2) {
            return 
false;
        }
        
// TODO check domains
        
return false;
    }


2. RegEx : damit ist das Ganze dann ein Einzeiler
It's your choice ...
m9716 ist offline   Mit Zitat antworten
Ungelesen 07.10.12, 22:02   #6
deddly
Anfänger
 
Registriert seit: May 2012
Beiträge: 5
Bedankt: 0
deddly ist noch neu hier! | 0 Respekt Punkte
Standard

So würde ich deine überprüfung durchführen:
C# Code

Code:
private void button1_Click(object sender, EventArgs e)
        {
            string text = textBox1.Text;

            if (überprüfen(text)) 
                MessageBox.Show("Email Richtig");
            else
                MessageBox.Show("Email Falsch");

        }
        public bool überprüfen(string s)
        {
            char[] text;
            text = s.ToCharArray(); // Stringtext in ein Char ablegen
            bool atVorhanden = false, punktVorhande = false;

            for (int i = 0; i < text.Length; i++) // alle char zeichen durchgehen
            {
                if (text[i] == '@') // Wenn aktuelles zeichen == '@' bool 
                                             atVorhanden auf True setzen
                    atVorhanden = true;
                if (text[i] == '.') // Wenn aktuelles zeichen == '.' bool 
                                            punktVorhanden auf True setzen
                    punktVorhande = true;
                if (punktVorhande && atVorhanden) // falls beide Zeichen in der 
                                                Zeichenkette vorhanden sind verlasse die for Schleife und return 
                                                Wahr (E-mail addresse gültig)
                    return true;
            }
                return false; // falls NICHT beide Zeichen vorhanden sind, return False (E-mail NICHT gültig
        }
bei Fragen unklarheiten, immer her damit...
hoffe konnte helfen
mfg
deddly ist offline   Mit Zitat antworten
Ungelesen 07.10.12, 23:31   #7
NetWebs
Banned
 
Registriert seit: Aug 2012
Beiträge: 223
Bedankt: 68
NetWebs ist noch neu hier! | 0 Respekt Punkte
Standard

Alle genannten Lösungen lassen auch ungültige Emailadressen zu!

Benutze einen regulären Ausdruck.

Und lies mal bitte die Forenregeln...der Titel deines Threads ist schmarrn...
NetWebs ist offline   Mit Zitat antworten
Ungelesen 08.10.12, 00:16   #8
urga
Mitglied
 
Benutzerbild von urga
 
Registriert seit: Aug 2009
Ort: void* (*wtf[])(void **);
Beiträge: 453
Bedankt: 137
urga ist noch neu hier! | 0 Respekt Punkte
Standard

a) regex in c# [ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ]
b) check auf gültige email [ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ]
__________________
entropie erfordert keine wartung
urga ist offline   Mit Zitat antworten
Antwort


Forumregeln
Du kannst keine neue Themen eröffnen
Du kannst keine Antworten verfassen
Du kannst keine Anhänge posten
Du kannst nicht deine Beiträge editieren

BB code is An
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist Aus.

Gehe zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:59 Uhr.


Sitemap

().