使用kettle及正則對內容中的身份證號做脫敏處理
阿新 • • 發佈:2021-11-22
使用kettle及正則對內容中的身份證號做脫敏處理
按照業務要求,將包含身份證號的內容進行脫敏處理,處理過程中使用正則表示式進行查詢和處理。
selectREGEXP_COUNT(欄位,'[1-9]\d{5}(18|19|20)\d{2}((0[1-9])|(1[0-2]))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]')from表;
統計欄位中符合身份證號正則的數量
Select regexp_replace(欄位,’^[1-9]\d{5}(18|19|20)\d{2}((0[1-9])|(1[0-2]))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]’,’’) from 表;
使用正則將身份證號替換為空;
處理中需要將身份證號進行脫敏,並非將身份證號替換為空,需要藉助kettle進行處理,kettle樣式如下:
1.拼接內容
通過SQL語句查詢出脫敏的身份證號內容,並作為輸入內容進行傳遞。
2.字串替換
使用拼接好的脫敏身份證號,將符合正則的內容替換掉,得到出新的欄位,將新欄位作為脫敏後的結果進行輸出
3.表輸出
將脫敏後的資料進行輸出到表中做下一步處理
測試表輸出內容如下
————歡迎大家溝通、指正---- QQ群:1071136320————