D’autres filtres permettent d’effectuer des comparaisons ou des recherches d’éléments. C’est le cas des filtres « |match » et « |replace »
-*
match
permet de tester si l’argument reçu vérifie une expression régulière transmise en second argument du filtre.
-*
replace
permet de remplacer du texte, en suivant aussi une expression régulière.
[(#BALISE|match{texte})]
[(#BALISE|replace{texte,autre texte})]
Ces filtres acceptent également deux paramètres supplémentaires qui sont le modificateur éventuel de l’expression régulière (par défaut « UimsS »), et le numéro de la parenthèse capturante qui est par défaut « 0 » (zéro) :
[(#BALISE|match{texte, modificateur, capture})]
[(#BALISE|replace{texte,autre texte, modificateur, capture})]
Exemple
// affiche "texte oui"
[(#VAL{Ce texte est joli}|match{texte}) oui ]
// affiche "oui"
[(#VAL{Ce texte est joli}|match{texte}|oui) oui ]
// n'affiche rien
[(#VAL{Cet écureuil est joli}|match{texte}) non ]
// affiche "oui"
[(#VAL{Cet écureuil est joli}|match{texte}|non) oui ]
// affiche "Ce chat est joli"
[(#VAL{Ce texte est joli}|replace{texte,chat})]