Caractereee repetate
Înapoi la analiza de sentiment! Următoarea ta sarcină este să înlocuiești cuvintele prelungite care apar în tweet-uri. Definim un cuvânt prelungit ca un cuvânt ce conține un caracter repetat de două sau mai multe ori. De exemplu: "Awesoooome".
Înlocuirea acestor cuvinte este foarte importantă, deoarece un clasificator le va trata ca termeni diferiți față de cuvintele originale, reducându-le frecvența.
Pentru a le identifica, vei folosi grupuri de captare și le vei referenția înapoi folosind numere. De ex. \4.
Dacă vrei să găsești o potrivire pentru Awesoooome, trebuie mai întâi să capturezi Awes. Apoi, potrivești o și referențiezi același caracter înapoi, iar după aceea, me.
Lista sentiment_analysis, care conține textul a trei tweet-uri, și modulul re sunt încărcate în sesiunea ta. Poți folosi print() pentru a vizualiza datele în Shell-ul IPython.
Acest exercițiu face parte din cursul
Expresii regulate în Python
Instrucțiuni pentru exercițiu
- Completează expresia regulată pentru a potrivi un cuvânt prelungit, conform descrierii.
- Caută elementele din lista
sentiment_analysispentru a verifica dacă acestea conțin cuvinte prelungite. Atribuie rezultatul variabileimatch_elongated. - Atribuie grupul capturat numărul zero variabilei
elongated_word. - Afișează rezultatul conținut în variabila
elongated_word.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# 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")