Exemplos
Usado com um único parâmetro, uma expressão regular excluirá o padrão.
Para excluir todas as "notaXX" do texto
[(#TEXTE|replace{nota\d*})]
Quando um segundo parâmetro é fornecido, as ocorrências do padrão serão substituidas por esse valor.
Por exemplo, para substituir todos os «2005» ou «2006» do texto por «2007» :
[(#TEXTE|replace{200(5|6), 2007})]
Os argumentos do filtro podem só ser textos simples:
substituir todos «ao invés de» par «em vez de» :
[(#TEXTE|replace{ao invés de, em vez de})]
É possível capturar valores na expressão regular como 1º argumento, e o 2º argumento pode referir-se aos valores capturados.
Exemplo para extrair o nome de um ficheiro a partir do seu caminho completo:
[(#FILE|replace{^.*/\(\[^/\]*\)$,$1})]
Um terceiro parâmetro corresponde às opções (ou modificadores) a aplicar à regexp :
[(#TEXTE|replace{^isto$, aquilo, UimsS})]
O valor padrão deste 3º parâmetro é UimsS
.
Outros exemplos
Substituir os espaços de um título por traços:
[(#TITRE|replace{\h,-,S})]
Substituir tudo o que não for uma letra num título por um traço:
[(#TITRE|replace{\P{L},-,S})]
Excluir o à (a com acento grave) de um título (note as aspas simples):
[(#TITRE|replace{\xe0,'',S})]
Excluir o ponto no fim de um título:
[(#TITRE|replace{\.$,'',S})]
Excluir as pontuações e os espaços inúteis e colocar um traço :
[(#TITRE|replace{( |\p{P}|\h)+,-,S})]
Atenção :
Declarar uma classe de caracteres como argumento do filtro |replace{[0-9]+}
produzirá um erro de compilação devido à presença dos parênteses rectos [
e ]
.
Para contornar este problema, é preciso escapar os parênteses rectos usando uma barra invertida "\", resultando em:
|replace{\[0-9\]+}
Ver também
- o filtro article 7111