gratté Je suis en train de traiter un certain HTML et il y avait quelques personnages étranges (qui donnent un saut de ligne lorsque j'utilise la commande d'impression) donc je l'ai fait ce qui suit:Changer impairs (très élevé) caractères ASCII en HTML
d.each_char do |c|; puts c + " " + c.ord.to_s; end
J'ai trouvé que c'était un personnage avec un ord de 9644. Il semble que ce soit un rectangle noir Unicode. Il y a aussi un ASCII 219 qui semble similaire, donc je voulais le mapper à ce code ASCII. J'ai essayé:
d = d.gsub(9644.chr, 219.chr)
Cela m'a donné une erreur "Exception: RangeError: 9644 hors de portée de char".
Est-il possible que je peux le faire (par exemple changer tous ord.9644 à ord.219.
Sinon je peux changer tous les caractères ASCII sur 255 à « ? », Même si je peux il serait bon de savoir comment faire
Cordialement, Ben
Pourquoi devez-vous remplacer les caractères? – Stefan
[ASCII] (https://en.wikipedia.org/wiki/ASCII) est un jeu de caractères de 7 bits avec des codes 0-127. Il y a aussi [extended ASCII] (https://en.wikipedia.org/wiki/Extended_ASCII) qui est un terme générique pour divers codages à 8 bits, c'est-à-dire ASCII plus les points de code 128-255. Veuillez spécifier l'encodage auquel vous faites référence. – Stefan
Vous devez connaître l'encodage du document HTML. Il peut s'agir d'une balise meta charset ou, si elle est fournie via HTTP, d'un en-tête Content-Type qui indique le codage à utiliser pour le lire. Peu importe, vous devez le lire avec l'encodage avec lequel il a été écrit. Si vous n'êtes pas dit explicitement ou par spécification, convention ou autrement, c'est une perte de données. –