CommencerCommencez gratuitement

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

Retour à votre analyse de sentiment ! Votre prochaine tâche consiste à remplacer les mots allongés qui apparaissent dans les tweets. Nous définissons un mot allongé comme un mot qui contient un caractère répété deux fois ou plus, par exemple « Awesoooome ».

Remplacer ces mots est très important, car un classificateur les traitera comme des termes différents des mots d’origine, ce qui diminuera leur fréquence.

Pour les trouver, vous utiliserez des groupes capturants et y ferez référence à l’aide de numéros, par exemple \4.

Si vous voulez trouver une correspondance pour Awesoooome, vous devez d’abord capturer Awes, puis faire correspondre o et référencer le même caractère ensuite, puis me.

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

Cet exercice fait partie du cours

<cours>Expressions rationnelles en Python</cours>
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 vérifier s’ils contiennent des mots allongés. Affectez le résultat à match_elongated.
  • Affectez 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