Eu tenho uma string em utf-8 (de acordo com o .encoding.name & .valid_encoding?) E há um caractere unicode de escape nele (u009A)
"Hammarskju009Ald"
Este deve imprimir como "Hammarskjšld", mas apenas cai o grafema. POR EXEMPLO:
puts "Hammarskju009Ald"
p "Hammarskju009Ald"
Resultados no texto:
Hammarskjld
"Hammarskju009Ald"
Também (se eu salvar os dados no banco de dados)cai quando é salvo também. Eu procurei por um tempo, mas eu não consigo descobrir como retirá-lo (que é o que eu acho que preciso fazer). Um monte de informação lá fora é para 1.8.7, e algumas das coisas para 1.9.2 não são exatamente o que eu preciso.
Alguém tem alguma ideia de como fazer o que eu quero? Eu pareço ter uma seqüência utf-8 válida, que tudo que eu quero fazer é salvar no banco de dados (intacto), mas sempre cai o unicode de escape.
Respostas:
0 para resposta № 1Tem certeza de que ele caiu, e não apenas não é exibido? Talvez seja apenas o problema de sua fonte ter um caractere de zero largura de não exibição nesse ponto de código.
Quando você tira isso do banco de dados e p
"ed ou inspect
ed, se você está vendo o personagem que escapou, isso significa que ele está lá, não caiu. É a sua impressão que é o problema.