replace |
Remplace |
| Liquid (Microsoft) |
Syntaxe
|
{{ string | replace: "ancienne_chaîne", "nouvelle_chaîne" }}
|
Paramètres
| Nom |
Description |
| string |
Ce paramètre permet d'indiquer la chaîne de caractères dans laquelle les remplacements seront effectués. |
| ancienne_chaîne |
Ce paramètre permet d'indiquer la sous-chaîne à rechercher dans la chaîne d'origine. |
| nouvelle_chaîne |
Ce paramètre permet d'indiquer la sous-chaîne qui remplacera chaque occurrence trouvée. |
Description
Ce filtre permet de substituer toutes les occurrences d'une sous-chaîne par une autre.
Remarques
- Remplace toutes les occurrences, pas seulement la première : Le filtre replace agit sur l'ensemble des occurrences de la sous-chaîne ciblée, et les remplace
en une seule opération. Il ne s'arrête pas à la première correspondance, ce qui le rend très efficace pour des remplacements massifs dans des blocs de texte ou des
données structurées.
- Insensible à la casse uniquement si les chaînes le sont aussi : Le remplacement est sensible à la casse, ce qui signifie que "Mot" et "mot" sont traités
différemment. Pour remplacer de façon insensible, il faut soit standardiser la casse au préalable (avec downcase par exemple), soit effectuer deux remplacements
successifs avec des variantes.
- Supporte aussi le remplacement de caractères spéciaux : Il est possible de remplacer des caractères comme \n, ,, ", ou encore des espaces, ce qui permet
de nettoyer ou transformer du texte brut, comme des chaînes issues d'un formulaire ou des extraits HTML partiels.
- Peut être utilisé pour formater dynamiquement du contenu : Ce filtre est très utile pour adapter dynamiquement du texte. Par exemple, remplacer un
jeton ([[NOM]]) par une valeur réelle issue d'une variable, ce qui permet une génération de contenu personnalisée dans des courriels ou pages dynamiques.
- Ne modifie pas la variable d'origine (comportement non destructif) : Comme tous les filtres Liquid, replace retourne une nouvelle valeur, sans
modifier la chaîne d'origine. Cela permet de conserver les données sources intactes, et de réutiliser la version modifiée uniquement dans un contexte donné.
- Permet de supprimer du contenu en utilisant une chaîne vide : Si la nouvelle_chaîne est vide (""), le filtre agit alors comme un outil de suppression. Cela
est pratique pour enlever rapidement un mot, un symbole ou un suffixe, sans passer par un filtre remove dédié.
- Particulièrement utile dans les URLs, noms de fichiers, ou chemins : Dans des scénarios impliquant des chemins ou identifiants, replace peut être
utilisé pour remplacer les espaces par des tirets, ou pour adapter des caractères interdits dans un nom de fichier. C'est une solution rapide pour générer des chaînes
propres et compatibles.
- Ne supporte pas les expressions régulières complexes : Contrairement à certaines fonctions de remplacement en
JavaScript ou C#, replace dans Liquid ne comprend pas les regex. Il
effectue un remplacement strictement littéral, ce qui peut limiter certains usages avancés mais simplifie les traitements pour les utilisateurs non techniques.
Dernière mise à jour : Jeudi, le 24 Juillet 2025