Kom igångKom igång gratis

Upprepade tecken

Tillbaka till sentimentanalysen! Din nästa uppgift är att ersätta förlängda ord som förekommer i tweets. Vi definierar ett förlängt ord som ett ord där ett tecken upprepas två eller fler gånger i rad, till exempel "Awesoooome".

Att ersätta sådana ord är viktigt eftersom en klassificerare annars behandlar dem som skilda termer från grundorden, vilket sänker deras frekvens.

För att hitta dem använder du infångningsgrupper och refererar tillbaka till dem med nummer, till exempel \4.

Om du vill hitta en matchning för Awesoooome behöver du först fånga Awes. Sedan matchar du o, refererar tillbaka till samma tecken och avslutar med me.

Listan sentiment_analysis, som innehåller texten från tre tweets, samt modulen re är inlästa i din session. Du kan använda print() för att visa data i IPython Shell.

Den här övningen är en del av kursen

Reguljära uttryck i Python

Visa kurs

Övningsinstruktioner

  • Komplettera det reguljära uttrycket för att matcha ett förlängt ord enligt beskrivningen ovan.
  • Sök igenom elementen i listan sentiment_analysis för att avgöra om de innehåller förlängda ord. Tilldela resultatet till match_elongated.
  • Tilldela den infångade gruppens nummer noll till variabeln elongated_word.
  • Skriv ut resultatet som finns lagrat i variabeln elongated_word.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# 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") 
Redigera och kör kod