CommencezCommencez gratuitement

Masquer des renseignements identificatoires avec des expressions régulières

Les expressions régulières peuvent aussi servir à remplacer des motifs dans des chaînes au moyen de REGEXP_REPLACE(). Cette fonction est semblable à REPLACE(). Sa signature est REGEXP_REPLACE(source, pattern, replace, flags).

  • pattern est le motif de chaîne à repérer dans la chaîne source.
  • replace est la chaîne de remplacement à utiliser à la place du motif.
  • flags est une chaîne facultative qui sert à contrôler la correspondance.

Par exemple, REGEXP_REPLACE(xyz, '\d', '_', 'g') remplace tout chiffre (\d) dans la colonne xyz par un trait de soulignement (_). L'indicateur g (« global ») garantit que chaque correspondance est remplacée.

Pour protéger la vie privée des personnes recevant des constats d'infraction de stationnement dans un nouveau rapport Web, toutes les lettres de la colonne plate_id doivent être remplacées par un tiret (-) afin de masquer le véritable numéro de plaque.

Cette activité fait partie du cours

Nettoyer des données dans des bases de données PostgreSQL

Voir le cours

Instructions de l’exercice

  • Utilisez REGEXP_REPLACE() pour remplacer toutes les lettres majuscules (A à Z) dans la colonne plate_id par un caractère tiret (-) afin que des numéros de plaque masqués puissent être utilisés dans le rapport.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

SELECT 
	summons_number,
	-- Replace uppercase letters in plate_id with dash
	___(___, ___, ___, 'g') 
FROM 
	parking_violation;
Modifier et exécuter le code