ComeçarComece de graça

Tokenização de caracteres não ASCII

Neste exercício, você vai praticar uma tokenização mais avançada, segmentando um texto com caracteres fora do ASCII. Vamos usar alemão com emoji!

Aqui, você tem acesso a uma string chamada german_text, que foi impressa para você no Shell. Repare nos emoji e nos caracteres em alemão!

Os seguintes módulos já foram importados de nltk.tokenize: regexp_tokenize e word_tokenize.

Os intervalos Unicode para emoji são:

('\U0001F300'-'\U0001F5FF'), ('\U0001F600-\U0001F64F'), ('\U0001F680-\U0001F6FF'), e ('\u2600'-\u26FF-\u2700-\u27BF').

Este exercício faz parte do curso

Introdução ao Processamento de Linguagem Natural em Python

Ver curso

Instruções do exercício

  • Tokenize todas as palavras em german_text usando word_tokenize() e imprima o resultado.
  • Tokenize apenas as palavras iniciadas com maiúscula em german_text.
    • Primeiro, escreva um padrão chamado capital_words para corresponder somente a palavras com inicial maiúscula. Lembre-se de verificar o Ü alemão! Para usar esse caractere no exercício, copie e cole a partir destas instruções.
    • Em seguida, tokenize usando regexp_tokenize().
  • Tokenize somente os emoji em german_text. O padrão usando os intervalos Unicode informados no enunciado já foi escrito para você. Sua tarefa é usar regexp_tokenize() para tokenizar os emoji.

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

# Tokenize and print all words in german_text
all_words = ____(____)
print(all_words)

# Tokenize and print only capital words
capital_words = r"[____]\w+"
print(____(____, ____))

# Tokenize and print only emoji
emoji = "['\U0001F300-\U0001F5FF'|'\U0001F600-\U0001F64F'|'\U0001F680-\U0001F6FF'|'\u2600-\u26FF\u2700-\u27BF']"
print(____(____, ____))
Editar e executar o código