regexp_replace 패턴검색후 치환 0 4 623

by SQL초보 [SQL Query] [2020.03.16 14:20:33]


안녕하세요~ 검색 등 해봐도 잘 안되네요;;

자문구해봅니다^^

a_desc 컬럼에 개인정보가 있으면

치환하려구요!

regexp_replace(a_desc, '[0-9]{6}[0-9]{7}', 여기부분)

저 두번째는 어떻게 해야 컬럼내용중

패턴에 걸리는 부분이 661212-2******

이렇게 일괄 변경될지 조언부탁드립니다

by pajama [2020.03.16 15:55:12]

저도 잘 모르지만.. 이렇게 되긴 하네요~ 좀 더 좋은 방법은 다른분께서~

SELECT REGEXP_REPLACE('가나다라 661212-1345678 abcdef','([0-9]{6})\-([1-2])([0-9]{6})', '\1-\2****** ')  FROM DUAL;
 


by SQL초보 [2020.03.16 16:01:45]

와우~~ 감사합니다^^


by 마농 [2020.03.16 16:06:20]

패턴은 여러 케이스를 확인해서 보완해야 할 것입니다.
"-" 가 항상 붙어 있는 경우만 있는지?
1900 년대생(1,2)만 있는지? 2000년대생(3,4), 외국인(5,6), 1800년대생(9,0) 등?
주민번호가 항상 중간에만 오는지? 맨 처음이나 맨 끝에 오는 경우
12345678-12345678 과 같은 주민번호가 아닌 자료가 앞뒤 잘려서 주민번호로 인식될 일은 없는지?
12(345678-1234567)8


by pajama [2020.03.16 16:15:20]

조언 감사합니다. 저도 참고하겠습니다~~

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입