Bonjour à tous,
Je vous expose ici un problème d'expression régulière en apparence assez simple mais sur lequel je bloque depuis quelques temps : regex builders, assistants, rien n'y fait, pas moyen...
Le problème :
Je dois analyser un fichier texte complet et remplacer toutes les occurences d'un mot donné (ex: toto) par une certaine valeur (ex: titi), mais uniquement si ce mot n'est pas compris entre crochets ou accolades, directement ou indirectement (c'est-à-dire que dans l'exemple [un_mot toto tutu], toto ne doit pas être inclus).
Les solutions envisagées
J'ai lu quelques articles notamment sur les assertions négatives, pensant qu'une expression du genre (?<!\[)+(.*)toto(.*)+(?!\]) ferait l'affaire, en essayant plusieurs variantes, mais rien n'y a fait, même si leur usage m'a permis de m'approcher du résultat.
Votre aide serait donc grandement appréciée, aussi je vous en remercie d'avance![]()











Répondre avec citation
Partager