J'écris un obfuscator HTML, et j'ai un hash corrélant des noms faciles à utiliser (des ids et des classes) aux noms obfuscated (comme a, b, c, etc.). J'éprouve des difficultés à venir avec un regexp pour accomplir quelque chose comme remplaçantComment remplacer plusieurs mots, chacun haché par un mot alternatif, dans un attribut HTML utilisant Perl regex?
<div class="left tall">
avec
<div class="a b">
Si les étiquettes ne pouvaient accepter une classe, l'expression rationnelle serait tout simplement quelque chose comme
s/(class|id)="(.*?)"/$1="$hash{$2}"/
Comment dois-je corriger cela pour prendre en compte plusieurs noms de classe entre guillemets? De préférence, la solution devrait être compatible avec Perl.
Certains pourraient dire que 'left' et' tall' sont aussi obfusqués que 'a' et' b'. –