Responder a: Regex

#23367

Olá Nelson, boa noite!

O método replace só substitui uma string por vez. E ele não faz substituições cumulativas. Ele sempre substitui a string original. Isso significa que se você tentar aplicar o método, ele faz isso

 

‘gostaria de solicitar um novo ##### para o meu trabalho’

‘gostaria de solicitar um novo documento para o meu ######’

 

Pois o método não é cumulativo. Uma forma de fazer as duas substituições (e quantas mais você quiser) seria preencher uma lista e ir substituindo aos poucos

 

texto_antes = 'gostaria de solicitar um novo documento para o meu trabalho'

lista = ['documento', 'trabalho']


substituidos = [texto_antes]

for i in lista:
  substituto_mais_recente = substituidos[-1].replace(i,'#####')
  substituidos.append(substituto_mais_recente)

texto_depois = substituidos[-1]

print(texto_depois)

 

Qualquer dúvida sobre como esse código acima funciona é só perguntar

Espero ter ajudado