Questão precisa se livrar de símbolos estranhos no texto


Eu preciso processar o seguinte texto para se livrar dos símbolos estranhos, tais como:

â<80><99> â<80><9c> â<80>?

Exemplo de texto:

Com o mistério inexplicado, o Hyatt tentou dar a seus hóspedes uma sensação de segurança, colocando um guarda em seu saguão. Mas Wolf não conseguia sacudir a idéia de que um ladrão poderia voltar a entrar em seu quarto a qualquer momento. “<80> <9c> Eu sonhei com isso por muitas noites, <80>”, diz Wolf, um consultor de serviços de TI da Dell de 66 anos viajando em Houston para negócios.

Alguém pode me ajudar com isso? Espero ou excluí-lo manualmente com algum comando no Vi ou fazê-lo com script.


1


origem


Parece que você está editando um arquivo UTF-8 em um vi que não entende UTF-8, tente usar o vim.
Talvez seja necessário alterar o suporte ao idioma para UTF-8 disponível nas Preferências do Windows do aplicativo que você está usando.
@muistooshort vi tornou-se vim pelo menos 25 anos atrás. - Shiplu Mokaddim
@Shiplu vim foi liberado apenas publicamente há 21 anos. Alguns sistemas operacionais ainda usam vi como padrão (IIRC, isso inclui o FreeBSD). É uma sugestão válida. - Bob


Respostas:


Eu encontrei o texto em questão aqui: http://www.forbes.com/sites/andygreenberg/2012/11/26/security-flaw-in-common-keycard-locks-exploited-in-string-of-hotel-room-break-ins/

Os caracteres que causam o problema são citações extravagantes e um apóstrofo, que não são os símbolos ASCII padrão para aspas e apóstrofos.

Eu colei esse texto na minha cópia do vim, e ele lidou bem com esses caracteres.

Mas aqui está como fazer substituições quando esse tipo de coisa acontece: http://aditya.sublucid.com/2008/01/18/replacing-those-pesky-smart-quotes-in-vim/


0



Muito Obrigado! Funciona e é exatamente o que eu preciso. Eu não pretendia inspirar qualquer interesse no conteúdo do texto. Lição aprendida :)


Principalmente esse problema ocorrerá se você transferir seu arquivo de máquinas Windows ou DOS. Para se livrar desses caracteres especiais indesejados use o utilitário "dos2unix"

mkannan@talksense-dr:~/tmp$ dos2unix test.sh 
dos2unix: converting file test.sh to UNIX format ...

0



dos2unix converte terminações de linha (de CR + LF para apenas LF). Isso parece mais um problema com a codificação de cotações. (@querystack confirmou em um comentário sobre a outra resposta que é um problema com 'aspas', que não fazem parte do conjunto de caracteres ASCII.) - Bob