Bonjour à tous, Je suis en windev 25 J'ai besoin de remplacer dans une chaine de caractères de plusieurs paragraphes tous les "s" simple par un double s "ss" a chaque fois qu'il se trouve entre deux voyelles pour qu'il ne se prononce pas z j'ai bien sur pensé à Code (Text): VérifieExpressionRégulière(sRes, "([aeiou])s([aeiou])") et la fonction remplace mais je n'y arrive pas Je suis surement pas loin Merci de votre aide
Salut Popoy, qqchose dans le genre [windev] TabCaract est un tableau de chaînes = ["a", "e", "i", "o", "u", "y"] TabRemplacement est un tableau de chaînes Nposition est un entier = 1 POUR TOUT UnCaractere DE TabCaract POUR TOUTE UnCaractere2 DE TabCaract TableauAjoute(TabRemplacement, UnCaractere + "s" + UnCaractere2) FIN FIN Nposition = Position(SAI_Texte1, TabRemplacement, Nposition) TANTQUE Nposition > 0 SAI_Texte1 = Remplace(SAI_Texte1, Nposition + 1, 1, "ss") Nposition += 1 Nposition = Position(SAI_Texte1, TabRemplacement, Nposition) FIN [/windev]
Salut popoy, Cela doit fonctionner à partir de la V27 il me semble sRegex est une chaîne = "([aeiouyàâäéèêëîïôöùûüÿAEIOUYÀÂÄÉÈÊËÎÏÔÖÙÛÜŸ])s([aeiouyàâäéèêëîïôöùûüÿAEIOUYÀÂÄÉÈÊËÎÏÔÖÙÛÜŸ])" stexte est une chaîne = "La maison est rose."+RC+"J'aime le rose et la maison" stexte = RegexReplace(stexte, sRegex, "$1ss$2") Info(stexte) // Resultat: La maisson est rosse."+RC+RC+"J'aime le rosse et la maisson