Tokenización no ASCII

En este ejercicio, practicarás la tokenización avanzada tokenizando algún texto no basado en ascii. ¡Utilizarás el alemán con emoji!

Aquí tienes acceso a una cadena llamada german_text, que se ha impreso para ti en el Shell. ¡Fíjate en el emoji y en los caracteres alemanes!

Se han preimportado los siguientes módulos de nltk.tokenize: regexp_tokenize y word_tokenize.

Los rangos Unicode para los emoji son:

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

Este ejercicio forma parte del curso

Introducción al procesamiento de lenguaje natural en Python

Ver curso

Instrucciones de ejercicio

  • Tokeniza todas las palabras de german_text utilizando word_tokenize(), e imprime el resultado.

  • Tokeniza sólo las palabras mayúsculas en german_text.

    • Primero, escribe un patrón llamado capital_words para que sólo coincida con palabras en mayúsculas. ¡Asegúrate de buscar el alemán Ü! Para utilizar este personaje en el ejercicio, cópialo y pégalo desde estas instrucciones.

    • A continuación, tokenízalo utilizando regexp_tokenize().

  • Tokeniza sólo los emoji en german_text. Se ha escrito para ti el patrón que utiliza los rangos unicode para emoji que se dan en el texto de la tarea. Tu trabajo consiste en utilizar regexp_tokenize() para tokenizar el emoji.

Ejercicio interactivo práctico

Pruebe este ejercicio completando este código de muestra.

# 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(____(____, ____))