Comment obtenir le Nième mot dans une chaîne donnée en utilisant Python ?

WBOY
Libérer: 2023-08-29 19:41:03
avant
1262 Les gens l'ont consulté

Comment obtenir le Nième mot dans une chaîne donnée en utilisant Python ?

Nous pouvons obtenir le Nième mot d'une chaîne donnée en Python en utilisant le fractionnement de chaîne, les expressions régulières, la méthode split(), etc. La manipulation de chaînes est une tâche courante en programmation, et extraire des mots spécifiques d'une chaîne peut être particulièrement utile dans divers scénarios. Dans cet article, nous explorerons différentes méthodes pour extraire le Nième mot d'une chaîne donnée à l'aide de Python.

Méthode 1 : séparation des chaînes

Cette méthode consiste à diviser la chaîne en une liste de mots et à accéder au mot souhaité en fonction de l'index.

Syntaxe

words = string.split()
Copier après la connexion

Ici, la méthode split() divise la chaîne en fonction des espaces par défaut. Les mots résultants sont stockés dans la liste de mots.

Algorithme

  • Acceptez la chaîne d'entrée et la valeur de N.

  • Utilisez la méthode split() pour diviser une chaîne en une liste de mots.

  • Accédez au Nième mot de la liste en utilisant l'indexation.

  • Accédez au Nième mot de la liste en utilisant l'indexation.

Exemple

Considérons la chaîne suivante : "Le renard brun rapide saute par-dessus le chien paresseux." Dans l'exemple suivant, la chaîne d'entrée est divisée en une liste de mots à l'aide de la méthode split(). Puisque la valeur de N est 3, la fonction renvoie le troisième mot, « marron ».

def get_nth_word_split(string, n):
    words = string.split()
    if 1 <= n <= len(words):
        return words[n-1]
    else:
        return "Invalid value of N."

# Test the function
input_string = "The quick brown fox jumps over the lazy dog."
n = 3
print(get_nth_word_split(input_string, n))
Copier après la connexion

Sortie

brown
Copier après la connexion

Méthode 2 : Utiliser des expressions régulières

Une autre méthode pour extraire le Nième mot consiste à utiliser des expressions régulières. Cette approche offre une flexibilité dans la gestion de différents modèles de mots et délimiteurs.

Syntaxe

import re
words = re.findall(pattern, string)
Copier après la connexion

Ici, utilisez la fonction re.findall() du module re pour extraire tous les mots de la chaîne d'entrée en fonction du modèle spécifié. Les modèles sont définis à l'aide d'expressions régulières. Les mots extraits sont stockés dans la liste de mots.

Algorithme

  • Importez le module re.

  • Acceptez la chaîne d'entrée et la valeur de N.

  • Définissez un modèle d'expression régulière pour faire correspondre les mots.

  • Utilisez la fonction findall() du module re pour extraire tous les mots de la chaîne.

  • Accédez au Nième mot de la liste obtenue à l'étape 4 en utilisant l'indexation.

  • Renvoyer le Nième mot.

Exemple

Dans l'exemple ci-dessous, le modèle d'expression régulière 'w+' est utilisé pour faire correspondre tous les mots de la chaîne d'entrée. La fonction findall() extrait tous les mots et les stocke dans une liste. Puisque la valeur de N est 4, la fonction renvoie le quatrième mot « sauts ».

import re

def get_nth_word_regex(string, n):
    pattern = r'\w+'
    words = re.findall(pattern, string)
    if 1 <= n <= len(words):
        return words[n-1]
    else:
        return "Invalid value of N."

# Test the function
input_string = "The quick brown fox jumps over the lazy dog."
n = 4
print(get_nth_word_regex(input_string, n))
Copier après la connexion

Sortie

fox
Copier après la connexion

Méthode 3 : utilisez la méthode split() et le séparateur personnalisé

Dans certains cas, la chaîne peut avoir un délimiteur spécifique autre que les espaces. Dans de tels scénarios, nous pouvons modifier la première méthode en spécifiant un délimiteur personnalisé pour diviser la chaîne.

Syntaxe

words = string.split(delimiter)
Copier après la connexion

Ici, la méthode split() est utilisée pour diviser la chaîne d'entrée en une liste de mots basée sur un délimiteur personnalisé. Le délimiteur est passé en paramètre à la méthode split(). Les mots divisés sont stockés dans la liste de mots.

Algorithme

  • Acceptez la chaîne d'entrée, le délimiteur et la valeur de N.

  • Divisez la chaîne en une liste de mots à l'aide de la méthode split() et d'un délimiteur personnalisé.

  • Accédez au Nième mot de la liste en utilisant l'indexation

  • Renvoyer le Nième mot.

Exemple

Dans l'exemple ci-dessous, la chaîne est divisée en mots à l'aide d'un délimiteur personnalisé (virgule ","). Le deuxième mot « banane » est extrait et renvoyé car il correspond à une valeur de N de 2.

def get_nth_word_custom_delimiter(string, delimiter, n):
    words = string.split(delimiter)
    if 1 <= n <= len(words):
        return words[n-1]
    else:
        return "Invalid value of N."

# Test the function
input_string = "apple,banana,orange,mango"
delimiter = ","
n = 2
print(get_nth_word_custom_delimiter(input_string, delimiter, n))
Copier après la connexion

Sortie

banana
Copier après la connexion

Conclusion

Dans cet article, nous avons expliqué comment obtenir le nième mot dans une chaîne donnée à l'aide du fractionnement d'une chaîne, en utilisant des expressions régulières et en utilisant la méthode de fractionnement avec un délimiteur personnalisé. Chaque méthode offre une flexibilité basée sur les exigences de la tâche. En comprenant et en mettant en œuvre ces techniques, vous pouvez extraire efficacement des mots spécifiques des chaînes de votre programme Python.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:tutorialspoint.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!