![]() |
Contrer la double subsitution - Version imprimable +- Communauté Eggdrop (https://forum.eggdrop.fr) +-- Forum : Eggdrop et scripts (https://forum.eggdrop.fr/forumdisplay.php?fid=8) +--- Forum : Scripts (https://forum.eggdrop.fr/forumdisplay.php?fid=4) +--- Sujet : Contrer la double subsitution (/showthread.php?tid=448) |
Contrer la double subsitution - Artix - 06/07/2009 En recherchant des moyens d'éviter la double-substitution (par exemple, dans les timers, pour éviter que les commandes s'éxecutent dans un pseudo contenant des crochets) - j'ai trouvé ce moyen : Citation :proc autoSecure {input} { return \{[string map {\{ \\\{ \} \\\} \\ \\\\} $input]\} } J'aimerais savoir si vous avez d'autres solutions plus simples, ou des cas dans lesquels ma solution ne marcherais pas (surement avec des listes j'immagine) RE: Contrer la double subsitution - djkenny - 06/07/2009 salut, ta proc n est pas tout a fait bonne Code : proc charfilter {arg} { dans l absolut la tienne doit fonctionner mais elle est trés mal codé. ++ RE: Contrer la double subsitution - Artix - 09/07/2009 L'interet de ma version, c'est qu'elle escape seulement les { } \ et englobe ça entre accolades Je suis quasiment certain quelle fonctionne sur les chaines litérales, mais pas vraiment sur pour les listes (pourrait ajouter un niveau de listes, tout ça...) RE: Contrer la double subsitution - djkenny - 09/07/2009 Code : proc charfilter {arg} { edit: bien que tcl le fasse d origine :) RE: Contrer la double subsitution - djkenny - 09/07/2009 sinon pour utiliser juste les { } \ ça donne Code : proc charfilter {arg} { |