strip(), et ses acolytes lstrip()
et rstrip()
, ne retirent pas la chaîne de caractères aux extrémités d’une autre chaîne de caractères.
Elles retirent des extrémités toutes lettres qui sont dans la chaînes passée en paramètre. La nuance est subtile, mais c’est la différence entre ça:
>>> "# ## # test ".strip('# ') # comportement attendu mais faux '## # test ' |
Et ça:
>>> "# ## # test ".strip('# ') # comportement réel 'test' |
Merci pour l’info. Cependant, c’est un léger Captain Obvious, puisque c’est déjà expliqué dans la doc de python, avec exemple à l’appui :
http://docs.python.org/library/stdtypes.html#str.strip
Un truc un peu moins Captain Obvious, et que j’aimerais bien savoir, c’est la liste exacte des caractères strippés lorsqu’on exécute la fonction sans paramètres.
L’aide indique laconiquement que ça enlève les “whitespace characters”. Ca enlève les ” “, mais aussi d’autres choses plus ou moins folkloriques : tabulations, saut de lignes. Je serais curieux de les connaître exhaustivement.
Exemple :
Traitement de caractère spéciaux fail ?
Puisque c’est comme ça j’essaie des trucs.
&
alert(‘XSS dans tes fesses’)
&
alert('XSS dans tes fesses')
Il faut utiliser les boutons “code” et “code coloré” dans la barre d’outils au dessus du formulaire de commande.
edit: Ah, mais tu l’as fais en fait. Putain de wordpress…
string.whitespace
A string containing all characters that are considered whitespace. On most systems this includes the characters space, tab, linefeed, return, formfeed, and vertical tab.
In [1]: import string
In [2]: string.whitespace
Out[2]: '\t\n\x0b\x0c\r '
Ah bien vu, m’sieur Achille Talon. Ca marche.
Merci pour l’info !
Sur ce, je laisse Sam et/ou Max débugger tout le code de WordPress.