Codes ISO -> ASCII

Résolu
MaX_62 Messages postés 879 Date d'inscription vendredi 22 octobre 2004 Statut Membre Dernière intervention 29 juin 2007 - 16 juin 2005 à 09:03
MaX_62 Messages postés 879 Date d'inscription vendredi 22 octobre 2004 Statut Membre Dernière intervention 29 juin 2007 - 16 juin 2005 à 13:02
Bonjour tout le monde,

Lorsque je récupère une page web a l'aide d'une connexion socket, je récupère parfois des codes ISO du genre
é
è
Les valeurs 233 et 232 correspondent aux valeurs ascii de "é" et "è".
Je voudrais donc faire un alias qui remplace &#x; par $chr(x)
J'ai déjà essayé un truc pour supprimer ces caractères :
alias -l deliso { var %b = $regsub($1-,/(?:&#.+?;)/g,,%i) | return %i }
Mais ça ne fait que supprimer les caractères, et non pas les remplacer comme je voudrais...
J'espère avoir été clair :o)



- =[MaX_62]=-

5 réponses

cs_PaDa Messages postés 1804 Date d'inscription mardi 15 juillet 2003 Statut Membre Dernière intervention 22 septembre 2009 5
16 juin 2005 à 12:15
Le défaut de ton truc c que ca remplace que si le truc est en début de mot si j'ai bien compris...

voila ce que j'ai répondu ailleurs, pas testé mais ca doit marcher...


alias deliso {

  var %x $1-

  while $regex(%x,/&#(\d+);/) {

    %x = $replace(%x,$+(&#,$regml(1),;),$chr($regml(1)))

  }

  return %x

}



PaDa
3
fjxokt Messages postés 840 Date d'inscription vendredi 28 janvier 2005 Statut Membre Dernière intervention 25 février 2009 1
16 juin 2005 à 10:48
j'avais y'a assez longtemps déja fait un truc du genre (mais bon c'etait pas avec regex alors ça t'interresera peut etre pas)




alias deliso { var %i 1, %final | tokenize 32 $1

while (%i <= $0) { var %final %final $iif($left($ [ $+ [ %i ]
],2) == &#,$chr($right($ [ $+ [ %i ] ],-2)),$ [ $+ [ %i ] ]) | inc
%i }

return %final

}
0
fjxokt Messages postés 840 Date d'inscription vendredi 28 janvier 2005 Statut Membre Dernière intervention 25 février 2009 1
16 juin 2005 à 12:21
ça ne remplace qu'en début de mot mais c'est toujours dans cet ordre là non ? (c'est pour ça que j'ai fait de cette maniere)
0
cs_PaDa Messages postés 1804 Date d'inscription mardi 15 juillet 2003 Statut Membre Dernière intervention 22 septembre 2009 5
16 juin 2005 à 12:31
oui mais si t'écris euh... "scripté" en html, ca
donnera "script&#233;" par exemple, et dans ce cas le remplacement
ne se fera pas avec le tien.. je pense que c rien du tout a corriger
cela dit, pi le tiens doit aller plus vite que le mien, faudrait
vérifier

(j'parle pas des balises non numériques, pour lesquelles ya un snippet bien fait sur sdb)

PaDa
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
MaX_62 Messages postés 879 Date d'inscription vendredi 22 octobre 2004 Statut Membre Dernière intervention 29 juin 2007
16 juin 2005 à 13:02
Merci bien



-=[MaX_62]=-
0
Rejoignez-nous