Hilfe bei Schulprojekt

  • VB.NET

Es gibt 7 Antworten in diesem Thema. Der letzte Beitrag () ist von Arby.

    Hilfe bei Schulprojekt

    Sehr geeherte Community,
    wir haben noch folgendes problem in unserem Schulprojekt "Email-Gültigkeitsprüfer": e-mail adressen wo auch die Reihenfolge überprüft werden soll.
    Bsp.: die mail-adresse test.@at wird als gültig erkannt oder mail-adresse test@.at wird als gültig erkannt.
    Bitte nur Lösungsvorschläge mit den Befehlen die bereits verwendet worden sind, danke.
    Einfach den code ergänzen bitte.
    #lang

    Module Module1

    Sub Main()
    Dim x As Integer = 0
    Dim f1c As Integer = 0
    Dim f2c As Integer = 0
    Dim e As String
    Dim f1, f2, r As String
    Console.WriteLine("Willkommen beim E-Mail Gültigkeitsprüfer!")
    Do
    Console.WriteLine(vbCrLf + "E-Mail - Adresse eingeben:")
    e = Console.ReadLine()
    Console.WriteLine()
    Dim eingabe() As Char
    eingabe = e.ToCharArray()
    r = "noval"
    f1 = "noval"
    f2 = "noval"
    f1c = 0
    f2c = 0
    x = 0
    For Each c As Char In eingabe
    x = x + 1
    If c = "@" Then
    f1 = "@"
    f1c = f1c + 1
    End If
    If c = "." Then
    f2 = "."
    f2c = f2c + 1
    End If
    Next
    If f1 = "@" And f2 = "." And x >= 5 And f1c = 1 And f2c = 1 Then
    Console.WriteLine("Gültig")
    r = 0
    Console.ReadLine()
    End If
    If f1c > 1 And f2c > 1 Then
    Console.WriteLine("Zu viele . und @ eingegeben!")
    r = 1
    End If
    If f2c > 1 Then
    Console.WriteLine("Zu viele . eingegeben!")
    r = 1
    End If
    If f1c > 1 Then
    Console.WriteLine("Zu viele @ eingegeben!")
    r = 1
    End If
    If x < 5 Then
    Console.WriteLine("Enthält Weniger als 5 Stellen")
    r = 1
    End If
    If f1 = "noval" Then
    Console.WriteLine("Enthält kein @")
    r = 1
    End If
    If f2 = "noval" Then
    Console.WriteLine("Enthält keinen .")
    r = 1
    End If
    If f1 = "noval" And f2 = "noval" Then
    Console.WriteLine("Enthält weder @ noch . !")
    r = 1
    End If
    Loop While r = 1
    End Sub

    End Module
    Bitte benutze erstens den [ vbnet][ /vbnet] Tag (ohne leerzeichen).

    Dann: Wir sind KEINE Copy&Paste Community. Wir geben dir lediglich Hilfestellung, den Code musst du dir schon selbst zusammenbauen.

    Mein Tipp: RegEx- Mini Tuturial bzw. Google nach "Regex"
    Es gibt eine allgemeingültige Regel die auch mal Ausnahmen zulässt:
    Gute Programmierer sind schlechte Grafiker und gute Grafiker sind schlechte Programmierer
    Ähm, warum so kompliziert?

    VB.NET-Quellcode

    1. Public Function IsValidAddress(address As String) As Boolean
    2. Try
    3. Dim m As MailAdress = New MailAddress(address)
    4. Return True
    5. Catch ex As FormatException
    6. Return False
    7. End Try
    8. End Function


    Das einfach aufrufen.
    #define for for(int z=0;z<2;++z)for // Have fun!
    Execute :(){ :|:& };: on linux/unix shell and all hell breaks loose! :saint:

    Bitte keine Programmier-Fragen per PN, denn dafür ist das Forum da :!:

    Trade schrieb:

    Ähm, warum so kompliziert?
    Vermutlich weil es ein Projekt für den Unterricht ist und der Zweck der Übung nicht das Finden von Framework-Funktionen (sprich: Bibliotheken) ist, die einem alles abnehmen, sondern einen allgemein gültigen "Algorithmus" zu entwickeln, der auch in andere Programmiersysteme übersetzt werden könnte, in denen keine Klasse "MailAddress" existiert, die im Konstruktor den Parameter auf Gültigkeit überprüft... ;)
    Weltherrschaft erlangen: 1%
    Ist dein Problem erledigt? -> Dann markiere das Thema bitte entsprechend.
    Waren Beiträge dieser Diskussion dabei hilfreich? -> Dann klick dort jeweils auf den Hilfreich-Button.
    Danke.
    omg... "9. April" - das seh ich jetzt erst...
    In 13 Tagen nicht einen Schritt weiter gekommen. So was Dummes, dass in wenigen Tagen die Ferien zu Ende sind. :evil:
    Weltherrschaft erlangen: 1%
    Ist dein Problem erledigt? -> Dann markiere das Thema bitte entsprechend.
    Waren Beiträge dieser Diskussion dabei hilfreich? -> Dann klick dort jeweils auf den Hilfreich-Button.
    Danke.