Wiederholung - Benutzerprofil-Validator
Teil des Abschnitts Logik & Kontrollfluss der Rust-Journey von Coddy. Lektion 65 von 66.
Aufgabe
EinfachDu erhältst drei Eingaben, die ein Benutzerprofil darstellen. Die erste Eingabe ist ein Benutzername, die zweite ein Alter und die dritte eine E-Mail-Adresse. Validiere das Profil gemäß den folgenden Regeln und gib die entsprechende Nachricht aus:
Validierungsregeln:
- Der Benutzername muss mindestens 3 Zeichen lang sein
- Das Alter muss zwischen 13 und 120 liegen (einschließlich)
- Die E-Mail-Adresse muss das Symbol
@enthalten
Anforderungen:
- Lies die Benutzernamen-Eingabe ein und entferne Leerzeichen
- Lies die Alters-Eingabe ein, entferne Leerzeichen und parse sie zu
i32 - Lies die E-Mail-Eingabe ein und entferne Leerzeichen
- Prüfe, ob die Länge des Benutzernamens mindestens 3 Zeichen beträgt
- Prüfe, ob das Alter im Bereich von 13 bis 120 liegt (verwende
matchmit Bereichen) - Prüfe, ob die E-Mail-Adresse das Zeichen
@enthält (verwende die Methode.contains()) - Wenn alle Validierungen erfolgreich sind, gib Folgendes aus:
Valid profile - Wenn der Benutzername zu kurz ist, gib Folgendes aus:
Invalid username - Wenn das Alter außerhalb des gültigen Bereichs liegt, gib Folgendes aus:
Invalid age - Wenn die E-Mail-Adresse
@nicht enthält, gib Folgendes aus:Invalid email - Prüfe die Validierungen in dieser Reihenfolge: zuerst den Benutzernamen, dann das Alter und anschließend die E-Mail-Adresse
Eingabe:
- Erste Zeile: Ein Benutzername (z. B.
alice123) - Zweite Zeile: Ein Alter (z. B.
25) - Dritte Zeile: Eine E-Mail-Adresse (z. B.
alice@example.com)
Ausgabe:
- Eines von:
Valid profile,Invalid username,Invalid ageoderInvalid email
Probier es selbst
use std::io;
fn main() {
// Benutzernamen-Eingabe lesen
let mut username = String::new();
io::stdin().read_line(&mut username).expect("Failed to read line");
let username = username.trim();
// Alters-Eingabe lesen
let mut age_input = String::new();
io::stdin().read_line(&mut age_input).expect("Failed to read line");
let age: i32 = age_input.trim().parse().expect("Failed to parse age");
// E-Mail-Eingabe lesen
let mut email = String::new();
io::stdin().read_line(&mut email).expect("Failed to read line");
let email = email.trim();
// TODO: Schreiben Sie Ihren Code unten, um das Profil zu validieren
// Benutzernamenlänge, Altersbereich und E-Mail-Format prüfen
// Die entsprechende Nachricht basierend auf den Validierungsergebnissen ausgeben
}Alle Lektionen in Logik & Kontrollfluss
1Fortgeschrittener Kontrollfluss
Der 'match'-AusdruckAbgleichen mehrerer WerteBereiche abgleichenDer 'if let'-AusdruckSchleifen als AusdrückeRückblick – Einfacher Befehls-Parser4Daten gruppieren mit Structs
Was ist ein Struct?Übersicht über StructsZugriff auf Struct-FelderVeränderbare StructsStructs als FunktionsparameterTupel-StructsZusammenfassung – Ein Buch-Struct erstellen2Einführung in Vektoren
Was ist ein Vektor?Einen Vektor erstellenElemente mit push hinzufügenZugriff auf Vektor-ElementeÜber einen Vektor iterierenVeränderliche IterationElemente entfernenZusammenfassung – Einfacher Score-Tracker5Schlüssel-Wert-Paare mit Hash Maps
Was ist eine Hash Map?Erstellen einer Hash MapEinfügen von Schlüssel-Wert-PaarenZugreifen auf WerteIterieren über eine Hash MapAktualisieren eines WertesEntfernen eines PaaresZusammenfassung – Wortzähler8Projekt: Einfaches Artikelinventar
Projekt-SetupEinen Artikel hinzufügenLagerbestand prüfenEinen Artikel verkaufenAlles zusammenfügen11Abschluss-Herausforderungen
Wiederholung - Einzigartige ElementeWiederholung - Benutzerprofil-ValidatorWiederholung - Noten-Zusammenfassung3Kommandozeilen-To-Do-Liste
Projekt-SetupEine Aufgabe hinzufügenAlle Aufgaben anzeigenEine Aufgabe entfernenFinaler CodeÜbe selbstständig: Online-Rust-Compiler