Identificerende informatie maskeren met reguliere expressies
Reguliere expressies kun je ook gebruiken om patronen in strings te vervangen met REGEXP_REPLACE(). De functie lijkt op REPLACE(). De signatuur is REGEXP_REPLACE(source, pattern, replace, flags).
patternis het stringpatroon dat je in desource-string wilt matchen.replaceis de vervangende string die je op de plaats van het patroon wilt gebruiken.flagsis een optionele string om het matchgedrag te sturen.
Bijvoorbeeld, REGEXP_REPLACE(xyz, '\d', '_', 'g') vervangt elk cijferteken (\d) in de kolom xyz door een underscore (_). De g-flag ("global") zorgt ervoor dat elke match wordt vervangen.
Om de privacy van ontvangers van parkeerboetes te beschermen in een nieuw webrapport, moeten alle letters in de kolom plate_id worden vervangen door een streepje (-) om het echte kentekennummer te maskeren.
Deze oefening maakt deel uit van de cursus
Data opschonen in PostgreSQL-databases
Oefeninstructies
- Gebruik
REGEXP_REPLACE()om alle hoofdletters (AtotZ) in de kolomplate_idte vervangen door een streepje (-), zodat gemaskeerde kentekennummers in het rapport kunnen worden gebruikt.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
SELECT
summons_number,
-- Replace uppercase letters in plate_id with dash
___(___, ___, ___, 'g')
FROM
parking_violation;