CommencezCommencez gratuitement

Caractères répééétés

Retour à votre analyse de sentiments ! Votre prochaine tâche consiste à remplacer les mots allongés qui apparaissent dans les tweets. On définit un mot allongé comme un mot qui contient un même caractère répété deux fois ou plus, p. ex. « Awesoooome ».

Remplacer ces mots est très important, car un classifieur les traitera comme des termes différents des mots d'origine, ce qui réduira leur fréquence.

Pour les repérer, vous utiliserez des groupes capturants et y ferez référence au moyen de numéros, p. ex. \4.

Si vous voulez trouver une correspondance pour Awesoooome, vous devez d'abord capturer Awes. Ensuite, faites correspondre o, faites référence au même caractère, puis me.

La liste sentiment_analysis, qui contient le texte de trois tweets, ainsi que le module re sont déjà chargés dans votre session. Vous pouvez utiliser print() pour afficher les données dans l'IPython Shell.

Cette activité fait partie du cours

Expressions régulières en Python

Voir le cours

Instructions de l’exercice

  • Complétez l'expression régulière pour faire correspondre un mot allongé tel que décrit.
  • Parcourez les éléments de la liste sentiment_analysis pour déterminer s'ils contiennent des mots allongés. Assignez le résultat à match_elongated.
  • Assignez le groupe capturé numéro zéro à la variable elongated_word.
  • Affichez le résultat contenu dans la variable elongated_word.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# Complete the regex to match an elongated word
regex_elongated = r"____(____)____\w*"

for tweet in sentiment_analysis:
	# Find if there is a match in each tweet 
	match_elongated = re.____(____, ____)
    
	if match_elongated:
		# Assign the captured group zero 
		elongated_word = match_elongated.____(____)
        
		# Complete the format method to print the word
		print("Elongated word found: {____}".format(word=____))
	else:
		print("No elongated word found") 
Modifier et exécuter le code