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']??
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']??
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']
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!!!