substitui 'caractere de substituição' por um banco de dados

1

Devido a alguns problemas de codificação, alguns caracteres no meu banco de dados foram interpretados incorretamente. Alguns caracteres foram substituídos pelo ' caractere de substituição '. Eu preciso encontrar todos esses caracteres e substituí-los por espaço. Eu estive pesquisando diferentes soluções usando sed, bash, perl, etc sem sorte. Alguém poderia compartilhar uma solução como encontrar esses caracteres (ou seja, procurando por esse caractere em hex / octal value ) e substituí-los por qualquer outro caractere?

Obrigado.

    
por Andrew 02.02.2012 / 11:45

1 resposta

6

O glifo "Caractere de substituição de caracteres" do Unicode normalmente não é o que está no sistema de armazenamento de dados subjacente: ele normalmente é inserido na camada de exibição (devido a uma falha de decodificação) e não informa qual código subjacente foi / é.

Você tem duas opções aqui:

O primeiro (e melhor) é descobrir qual é o glifo / código subjacente e usar suas ferramentas de banco de dados para limpar as coisas.

O segundo é exportar seus dados por meio de algo que faz as conversões Unicode, pesquisar / substituir o código "Caractere de substituição" e reimportar seus dados. Isso geralmente é inviável para todos, menos para os menores conjuntos de dados (e se o problema é que sua estação de trabalho não consegue descobrir o que fazer com os glifos Unicode, não corrija seu problema).

    
por 02.02.2012 / 21:13

Tags