Düzenli ifadelerle kimlik bilgilerini maskeleme
Düzenli ifadeler, REGEXP_REPLACE() kullanılarak dizelerdeki örüntüleri değiştirmek için de kullanılabilir. Bu işlev, REPLACE() işlevine benzer. İmzası REGEXP_REPLACE(source, pattern, replace, flags) şeklindedir.
pattern,sourcedizesinde eşleştirilecek örüntüdür.replace, örüntünün yerine kullanılacak değiştirme dizesidir.flags, eşleştirmeyi kontrol etmek için kullanılan isteğe bağlı bir dizedir.
Örneğin, REGEXP_REPLACE(xyz, '\d', '_', 'g'), xyz sütunundaki herhangi bir rakam karakterini (\d) alt çizgi (_) ile değiştirir. g ("global") bayrağı, her eşleşmenin değiştirilmesini sağlar.
Yeni bir web raporunda park ihlali alan kişilerin mahremiyetini korumak için, plate_id sütunundaki tüm harflerin gerçek plaka numarasını maskelemek üzere bir tire (-) ile değiştirilmesi gerekir.
Bu egzersiz, kursun bir parçasıdır
PostgreSQL Veritabanlarında Veri Temizleme
Egzersiz talimatları
- Raporda maskelenmiş plaka numaralarının kullanılabilmesi için
plate_idsütunundaki tüm büyük harfleri (AileZarası)REGEXP_REPLACE()ile bir tire karakteri (-) ile değiştir.
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
SELECT
summons_number,
-- Replace uppercase letters in plate_id with dash
___(___, ___, ___, 'g')
FROM
parking_violation;