Syntaxe de base de REGEXP_REPLACE
- REGEXP_REPLACE("la chaine sur laquelle on veut faire le remplacement", "expression régulière", "la chaine de remplacement")
Pour la syntaxe complète (paramètres supplémentaires position
, nbre d’occurrences
, type de remplacement
) voir https://dev.mysql.com/doc/refman/8.0/en/regexp.html#function_regexp-replace
Utiliser REGEXP_REPLACE dans un UPDATE
Dans cet exemple on souhaite supprimer (= remplacer par une chaine vide) les numéros qui précèdent le texte dans le champ titre
de la table spip_articles
. Ces numéros sont tous en début de titre et suivi par un point et un espace : l’expression régulière pour les "attraper" sera donc : ^[0-9]*\.
, ce qui donne comme syntaxe de l’UPDATE :
- UPDATE spip_articles SET titre = REGEXP_REPLACE(titre, "^[0-9]*\. ", "");