|replace

El filtro |replace utiliza una expresión regular [1] para suprimir o reemplazar todas las ocurrencias de un patrón en la baliza.

Utilizado con un solo parámetro, una expresión regular, el patrón será suprimido.

Por ejemplo, para suprimir todos los "notaXX" del texto [(#TEXTE|replace{nota\d*})].

Cuando se le proporciona un segundo parámetro al filtro, las ocurrencias del patrón serán reemplazadas por este valor.
Por ejemplo, para reemplazar todos los «2005» o «2006» del texto por «2007»:

[(#TEXTE|replace{200(5|6), 2007})]

Los argumentos del filtro pueden ser solamente textos simples:
reemplazar todos los «en tiempo» por «a tiempo» : [(#TEXTE|replace{en tiempo, a tiempo})]

También se le puede pasar un tercer parámetro al filtro. Corresponderá entonces a las opciones (o modificadores) a aplicar a la expresión regular:
[(#TEXTE|replace{^esto$, aquello, UimsS})]

Atención :
No es posible declarar una clase de caracteres como argumento del filtro: |replace{[0-9]+} producirá un error de compilación debido a la presencia de los corchetes [ y ],
No obstante, es posible escribir expresiones regulares complejas utilizando las clases de caracteres y definiéndolas previamente:

#SET{ma_regexp, ^[[:space:]]*([0-9]+)([.)]|Â?°)[[:space:]]+}
[(#DESCRIPTIF|replace{#GET{ma_regexp}, __, Uims})]

Leer también: el filtro |match

Notas

[1no dudes en consultar la página dedicada en la Wikipedia: Expresión_regular

Autor o autora David Sánchez Crespillo Publicado el: Actualizado: 26/10/12

Traducciones: català, English, Español, français, Nederlands