Začněte nyníZačněte zdarma

Opakoooované znaky

Zpět k analýze sentimentu! Tvým dalším úkolem je nahradit protažená slova, která se v tweetech vyskytují. Protažené slovo definujeme jako slovo, ve kterém se nějaký znak opakuje dvakrát nebo vícekrát za sebou – například „Awesoooome".

Nahrazení těchto slov je velmi důležité, protože klasifikátor by je jinak považoval za odlišné výrazy než jejich původní podoby, což by snižovalo jejich frekvenci.

K jejich nalezení použiješ zachytávací skupiny a zpětné reference na ně pomocí čísel, např. \4.

Chceš-li najít shodu pro Awesoooome, musíš nejdřív zachytit Awes. Poté zachyť o a odkaž se zpět na stejný znak, a pak zachyť me.

Seznam sentiment_analysis s texty tří tweetů a modul re jsou v tvé session načteny. Data si můžeš prohlédnout pomocí print() v IPython Shellu.

Toto cvičení je součástí kurzu

Regular Expressions in Python

Zobrazit kurz

Pokyny k cvičení

  • Doplň regulární výraz tak, aby odpovídal protaženému slovu podle výše uvedeného popisu.
  • Prohledej prvky v seznamu sentiment_analysis a zjisti, jestli obsahují protažená slova. Výsledek přiřaď do proměnné match_elongated.
  • Přiřaď zachycenou skupinu číslo nula do proměnné elongated_word.
  • Vypiš výsledek uložený v proměnné elongated_word.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

# 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") 
Upravit a spustit kód