1
resposta

[Dúvida] estou com duvida para que serve: dados['descricao_local'].str.replace('(?<!\w)-(?!\w)', '', regex=True)

olá, tudo bem? eu não entendi essa parte: dados['descricao_local'].str.replace('(?<!\w)-(?!\w)', '', regex=True) está tirando esses caracteres da str? Porque ja foi tirado nesse código né: dados['descricao_local'] = dados['descricao_local'].str.replace('[^a-zA-Z0-9-']', ' ', regex=True). Deixando apenas os caracteres '[^a-zA-Z0-9-']'

1 resposta

Olá, Guilherme! Como vai?

A primeira expressão regular [^a-zA-Z0-9] remove todos os caracteres que não são letras, números, hífens ou apóstrofos. No entanto, essa primeira expressão não remove hífens que estão isolados, ou seja, aqueles que não estão conectados a outros caracteres. É aí que entra a segunda expressão regular (?<!\w)-(?!\w), ela é mais específica e tem como objetivo remover apenas os hífens que não estão no meio de palavras.

Espero ter ajudado e fico à disposição se precisar.

Abraço e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado