Skip to content

$string.replaceAll

Description

Remplace toutes les occurrences de la regex dans la string par la valeur de remplacement.

Syntaxe

$string.replaceAll( string , regex , replacement [ , options ] )

Paramètres

string string
String à traiter
regex string
Expression régulière de recherche, selon la notation java (avec échappement des "\")
replacement string
Valeur de remplacement
options map

Map d'options. Les options reconnues sont:

flags string / array

Ensemble de flags de compilation de l'expression régulière. Les flags sont à passer sous forme d'une chaîne de mots-clés séparés par une virgule ou sous forme de tableau de mots-clés. Les mots-clés reconnus sont:

  • case_insensitive (ou insensitive)
  • multiline
  • dotall
  • unicode_case
  • canon_eq
  • unix_lines
  • literal
  • unix_character_class
  • comments

Vous pouvez vous reporter à la documentation java pour de plus amples détails sur le rôle de ces flags

nullSubst string
Valeur de substitution à utiliser si la valeur de remplacement est null.

Retour

Nouvelle chaîne intégrant les remplacements.

Exemple

Met en gras les adresses e-mail présentes dans une chaîne de caractères.

1
2
3
$string.replaceAll(val,
                   "([\\w!#$%&’*+/=?`{|}~^-]+(?:\\.[\\w!#$%&’*+/=?`{|}~^-]+)*@(?:[a-zA-Z0-9-]+\\.)+[a-zA-Z]{2,63})",
                   "<b>$1</b>");

Remarque: n'utilisez pas l'exemple ci-dessus tel quel car il ne gère pas l'échappement des éventuels caractères spéciaux présents dans les adresses e-mail (par exemple si l'adresse e-mail contient un display name). Une version alternative est donnée dans l'exemple de la méthode $string.find.