bonjour,
voici le principe, je n'ai pas trouvé la bonne syntaxe de la regexp cet exemple fonction même si le 's' est entouré de consonne
[windev]szTmp est une chaîne = "La maison est rose. J'aime le rose et la maison"
szTmp2 est une chaîne
szTmp2 = _test(szTmp)
Info(szTmp2)
PROCÉDURE INTERNE _test(LOCAL text is string)
clean_text est chaîne
parts est tableau de chaîne
TANTQUE VérifieExpressionRégulière(text, "(.*)(s)(.*)", parts)
clean_text = parts[3] + clean_text
clean_text = parts[2]+"s" + clean_text
text = parts[1]
FIN
clean_text = text + clean_text
RENVOYER clean_text
FIN[/windev]
-
Bonjour tout le monde ! Veillez consulter la Politique de forum pour comprendre nos règles, Merci a vous !Rejeter la notice
WD Remplacer RegEx dans une Chaine
Discussion dans 'Résolution problème & conseils' créé par popoy, Nov 2, 2026, à 1:27 PM.
Merci
C'est ce que je cherche mais en 25Cliquez pour agrandir...
PROCÉDURE CorrigePrononciationTexte(stexte est une chaîne)
sVoyelles est une chaîne = "aeiouyàâäéèêëîïôöùûüÿAEIOUYÀÂÄÉÈÊËÎÏÔÖÙÛÜŸ"
sNouveauTexte est une chaîne = ""
nLen est un entier = Taille(stexte)
POUR i = 1 _À_ nLen
c est un caractère = stexte
bModifie est un booléen = Faux
// --- RÈGLE 1 : Le 's' entre deux voyelles (devient 'ss') ---
SI (c = "s" OU c = "S") ET i > 1 ET i < nLen ALORS
cPrecedent est un caractère = stexte[i-1]
cSuivant est un caractère = stexte[i+1]
SI Position(sVoyelles, cPrecedent) > 0 ET Position(sVoyelles, cSuivant) > 0 ALORS
sNouveauTexte += "ss"
bModifie = Vrai
FIN
FIN
// Si aucune règle spécifique n'a modifié le caractère, on le recopie tel quel
SI bModifie = Faux ALORS
sNouveauTexte += c
FIN
FIN
RENVOYER sNouveauTexte
****************
Appel de la procedure
stexte est une chaîne = "La maison est rose."+RC+"J'aime le rose et la maison"
Info(CorrigePrononciationTexte(stexte)) // Resultat: La maisson est rosse."+RC+"J'aime le rosse et la maisson