dimanche 3 juin 2012

Nettoyer un texte du code HTML des caractères spéciaux - GScript

0 commentaires
Les Google Scripts (GScript) sont à Google Docs ce que les macros sont à Excel. On peut programmer des actions et interagir avec les différents produits de Google. J'ai eu un souci en utilisant getBody() de la class Gmail car en retour on a le corps du mail mais avec les caractères spéciaux en code HTML.

Fonction pour convertir les caractères HTML
Voici une fonction qui permet de transformer les " , < , & en leur caractère spécial. Comme pour coder en Google Script il faut coder en Javascript cela sera aussi valable pour convertir les caractères au format HTML en Javascript.

function ConvChar( str ) {
  c = {'"' : '"' , '"' : '"' , ''' : '\'' , ''' : '\'' ,
       '&#38;' : '&' , '&amp;' : '&' , '&#60;' : '<' , '&lt;' : '<' , '&#62;' : '>' , '&gt;' : '>' };
  return str.replace( /(&[^;]+;)/ig, function(s) { return c[s]; } );
}
Ensuite il suffit d'appeler la fonction pour transformer son texte, par exemple :
var body = ConvChar(messages[j].getBody());
Tous les caractères spéciaux ne sont pas listés dans cette fonction mais on peut en ajouter, il suffit juste de les mettre dans le tableau c.
Pour trouver tous les caractères spéciaux avec leur code HTML vous pouvez aller sur ce site.

Leave a Reply