Python Rechercher toutes les occurrences dans la chaîne
-
Utilisez la fonction
string.count()
pour rechercher toutes les occurrences d’une sous-chaîne dans une chaîne en Python -
Utilisez List Comprehension et
startswith()
pour rechercher toutes les occurrences d’une sous-chaîne dans une chaîne en Python -
Utilisez le
re.finditer()
pour rechercher toutes les occurrences d’une sous-chaîne dans une chaîne en Python
Une sous-chaîne en Python est un groupe de caractères qui se produit dans une autre chaîne. Le traitement des sous-chaînes peut souvent être gênant. L’un de ces problèmes consiste à trouver toutes les occurrences d’une sous-chaîne dans une chaîne particulière.
Ce didacticiel abordera différentes méthodes pour trouver toutes les occurrences d’une sous-chaîne dans une chaîne en Python.
Utilisez la fonction string.count()
pour rechercher toutes les occurrences d’une sous-chaîne dans une chaîne en Python
Le string.count()
est une fonction intégrée à Python qui renvoie la quantité ou le nombre d’occurrences d’une sous-chaîne dans une chaîne particulière donnée. De plus, il dispose de paramètres supplémentaires start
et end
pour spécifier les indices des positions de début et de fin.
La méthode count()
parcourt la chaîne et renvoie le nombre de fois qu’une sous-chaîne spécifique s’est produite dans la chaîne.
Le code suivant utilise la fonction string.count()
pour rechercher toutes les occurrences d’une sous-chaîne dans une chaîne.
# defining string and substring
str1 = "This dress looks good; you have good taste in clothes."
substr = "good"
# occurrence of word 'good' in whole string
count1 = str1.count(substr)
print(count1)
# occurrence of word 'good' from index 0 to 25
count2 = str1.count(substr, 0, 25)
print(count2)
Production:
2
1
C’est une méthode facile et qui fonctionne dans tous les cas. Le seul inconvénient de cette méthode est qu’elle ne renvoie pas les différents indices auxquels la sous-chaîne apparaît dans la chaîne.
Utilisez List Comprehension et startswith()
pour rechercher toutes les occurrences d’une sous-chaîne dans une chaîne en Python
Cette méthode a besoin de deux choses : la compréhension de liste et la méthode startswith()
.
La fonction startswith()
joue la tâche d’obtenir les indices de début de la sous-chaîne, et la compréhension de la liste est utilisée pour parcourir la chaîne cible complète.
Le code suivant utilise la compréhension de liste et startswith()
pour rechercher toutes les occurrences d’une sous-chaîne dans une chaîne.
# defining string
str1 = "This dress looks good; you have good taste in clothes."
# defining substring
substr = "good"
# printing original string
print("The original string is : " + str1)
# printing substring
print("The substring to find : " + substr)
# using list comprehension + startswith()
# All occurrences of substring in string
res = [i for i in range(len(str1)) if str1.startswith(substr, i)]
# printing result
print("The start indices of the substrings are : " + str(res))
Production:
The original string is : This dress looks good; you have good taste in clothes.
The substring to find : good
The start indices of the substrings are : [17, 34]
Utilisez le re.finditer()
pour rechercher toutes les occurrences d’une sous-chaîne dans une chaîne en Python
re.finditer()
est une fonction de la bibliothèque regex que Python fournit aux programmeurs à utiliser dans leur code. Il aide à effectuer la tâche de trouver l’occurrence d’un modèle particulier dans une chaîne. Pour utiliser cette fonction, nous devons d’abord importer la bibliothèque regex re
.
re.finditer()
utilise les paramètres pattern
et string
dans sa syntaxe. Dans ce cas, le modèle fait référence à la sous-chaîne.
Le code suivant utilise la fonction re.finditer()
pour rechercher toutes les occurrences d’une sous-chaîne dans une chaîne.
import re
# defining string
str1 = "This dress looks good; you have good taste in clothes."
# defining substring
substr = "good"
print("The original string is: " + str1)
print("The substring to find: " + substr)
result = [_.start() for _ in re.finditer(substr, str1)]
print("The start indices of the substrings are : " + str(result))
Production:
The original string is: This dress looks good; you have good taste in clothes.
The substring to find: good
The start indices of the substrings are : [17, 34]
Vaibhhav is an IT professional who has a strong-hold in Python programming and various projects under his belt. He has an eagerness to discover new things and is a quick learner.
LinkedInArticle connexe - Python String
- Supprimer les virgules de la chaîne en Python
- Comment vérifier qu'une chaîne est vide de manière pythonique
- Convertir une chaîne en nom de variable en Python
- Comment supprimer les espaces dans une chaîne de caractères en Python
- Comment extraire des nombres d'une chaîne de caractèresen Python
- Comment convertir une chaîne de caractères en datetime en Python