Récapitulatif - Trouver le premier mot
Fait partie de la section Logic & Flow du Journey Rust de Coddy — leçon 58 sur 66.
Défi
FacileVous recevrez une seule entrée contenant une phrase avec plusieurs mots séparés par des espaces. Trouvez et affichez le premier mot de la phrase en utilisant le découpage de chaîne (string slicing).
Exigences :
- Lire la phrase d'entrée et supprimer les espaces superflus (trim)
- Trouver la position du premier espace dans la phrase
- Créer une tranche de chaîne (string slice) du début de la phrase jusqu'au (mais sans inclure) premier espace
- Afficher le premier mot
Astuce : Vous pouvez utiliser la méthode .find() pour localiser le premier caractère d'espace. Appelez-la comme ceci : sentence.find(' '), en passant un caractère d'espace comme argument. Cette méthode renvoie une Option qui contient l'index si un espace est trouvé. Utilisez .unwrap_or(sentence.len()) pour gérer les cas où il n'y aurait pas d'espace (mot unique), en utilisant par défaut la longueur totale de la phrase.
Entrée :
- Une phrase avec un ou plusieurs mots séparés par des espaces (par exemple,
Hello World from Rust)
Sortie :
- Le premier mot de la phrase
Essayez vous-même
use std::io::{self, BufRead};
fn main() {
// Lire l'entrée
let stdin = io::stdin();
let sentence = stdin.lock().lines().next().unwrap().unwrap().trim().to_string();
// TODO: Écrivez votre code ci-dessous
// Trouver la position du premier espace
// Créer une tranche de chaîne du début jusqu'au premier espace
// Stocker le premier mot dans une variable
// Afficher le premier mot
// println!("{}", first_word);
}Toutes les leçons de Logic & Flow
1Structures de contrôle avancées
L'expression 'match'Filtrage de plusieurs valeursFiltrage d'intervallesL'expression 'if let'Les boucles en tant qu'expressionsRécapitulatif - Analyseur de commandes simple4Regrouper des données avec les structures
Qu'est-ce qu'une structure ?Aperçu des structuresAccéder aux champs d'une structureStructures mutablesLes structures comme paramètres de fonctionStructures tupleRécapitulatif - Créer une structure Book2Introduction aux vecteurs
Qu'est-ce qu'un vecteur ?Créer un vecteurAjouter des éléments avec pushAccéder aux éléments d'un vecteurItérer sur un vecteurItération mutableSupprimer des élémentsRécapitulatif - Suivi de score basique5Paires clé-valeur avec les Hash Maps
Qu'est-ce qu'une Hash Map ?Créer une Hash MapInsérer des paires clé-valeurAccéder aux valeursParcourir une Hash MapMettre à jour une valeurSupprimer une paireRécapitulatif - Compteur de mots8Projet : Inventaire d'articles simple
Configuration du projetAjouter un articleVérifier le stockVendre un articleAssembler le tout3Liste de tâches en ligne de commande
Configuration du projetAjouter une tâcheAfficher toutes les tâchesSupprimer une tâcheCode final6Gérer l'absence avec 'Option'
Qu'est-ce qu'une 'Option' ?Utiliser 'match' avec 'Option'is_some() et is_none()Déballer une 'Option'La méthode expectFournir une valeur par défaut : unwrap_orRécapitulatif - Trouver un élément9Slices de chaînes et plus encore
String vs. &strCréer des slices de chaînesLes slices comme paramètres de fonctionAutres types de slicesRécapitulatif - Trouver le premier mot