psikopit
Messages postés3Date d'inscriptionmercredi 7 avril 2010StatutMembreDernière intervention 9 janvier 2011
-
30 déc. 2010 à 14:51
psikopit
Messages postés3Date d'inscriptionmercredi 7 avril 2010StatutMembreDernière intervention 9 janvier 2011
-
9 janv. 2011 à 10:52
Bonjour à tous ;)
Je suis débutant en python et j'essaie de faire un code tout simple qui matche les **En gras** d'un texte pour les remplacer par des En gras html :)
Jusque la rien de compliquer j'utilise ce code python/regex:
line = re.sub('(\*\*)([^*]+)(\*\*)','\\2',line)
Cela fonctionne très bien sauf si l'on écrit **Le texte en * gras**
Le code ne match plus les ** cela vient du [^*]+ (cela veut bien dire n'importe quel caractère sauf *?) le problème est qu'il faudrait exclure la chaine ** et non * mais je 'y parvient pas :/ merci de votre aide :)
P.S.: c'est moitier python/regex alors je ne sais pas trop où poster :/
psikopit
Messages postés3Date d'inscriptionmercredi 7 avril 2010StatutMembreDernière intervention 9 janvier 2011 9 janv. 2011 à 10:52
corp = re.sub('\*\*([\s\S]+?)\*\*','\\1 ',corp)
Merci de ta réponse :D et excuse moi de la mienne tardive :/
J'ai fini par écrire sa et cela fonctionne a merveille
Je n'avais jamais entendu parlé de chaines greedy^^ maintenant je n'oublierai pas :)