Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Dúvida no Ex. 4 da Aula 7 - Expressão regulares

Ao executar o comando abaixo:

re.findall(r'(\w+\d$)','rota66 88centavos Peer2Peer Python2')

Deveria retornar ['rota66', 'Python2'], porém só retorna 'Python2' o que invalida a resposta do exercício.

1 resposta
solução!

Oi Frederico,

Na verdade o $ significa ao final da expressão completa, e não ao final de cada palavra da expressão.

Por isso ele só retornou o python2.

Para retornar cada palavra da expressão que termina com um ou mais digitos você pode usar a seguinte expressão:

re.findall(r'(\w+\d+\b)','rota66 88centavos Peer2Peer Python2')

O \b ao final da regex serve para considerar a palavra inteira. Sem ele, a regex anterior também retornaria 88 e Peer2.

Bons estudos!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software