Black November

ATÉ 50% OFF

TÁ ACABANDO!

0 dias

0 horas

0 min

0 seg

Solucionado (ver solução)
Solucionado
(ver solução)
6
respostas

Resultado do regex

Por favor, por que esse código:

  resultados = re.findall(r'(^\d\w+)', '88centavos Peer2Peer Python2 99taxi')
 resultados
['88centavos']

só retorna ['88centavos']?

Não deveria retornar ['88centavos', '99taxi']??

Matricule-se agora e aproveite até 50% OFF

O maior desconto do ano para você evoluir com a maior escola de tecnologia

QUERO APROVEITAR
6 respostas

Oi Luiz, tudo bem?

Veja que você está usando o ^, isso indica que você está procurando uma palavra no começo da string que começa com um dígito (\d).

Como você quer procurar as palavras que comecem com um dígito, você deve passar o parâmetro \b, isto é, palavras na string que comecem com um dígito: \b\d\w+

No código fica assim:

>> resultados = re.findall(r'(\b\d\w+)', '88centavos Peer2Peer Python2 99taxi')
>>  resultados
['88centavos']
solução!

Valeu Yuri!! Muito obrigado!

Oi Luiz, neste caso é por conta do '^' que vai buscar apenas no início da String.

Para ter o resultado que deseja você precisa fazer:

import re

resultados = re.findall(r'(\b\d\w+)', '88centavos Peer2Peer Python2 99taxi')
print(resultados)

Valeu Thais!! Muito obrigado!!

desculpe, tinha deixado a janela aberta e eu não tinha visto que o yuri já tinha respondido e não consegui excluir a resposta.

Que isso Thais, quanto mais informações, melhor!!! Valeu!!!