IT'S YU
[Oracle] REGEXP_REPLACE 전체 특수문자 제거 본문
기본 문법
SELECT REGEXP_REPLACE([컬럼명], '[변경하고 싶은 값1]|[변경하고 싶은 값2]', [변경된 값]) AS [컬럼명]
FROM [테이블명] ;
1. 숫자를 전부 특정 문자로 변경 ( 중간에 .이 들어간 소수는 뒷자리 변경안됨 )
SELECT regexp_replace([컬럼명], '[[:digit:]]+', [변경값]) FROM [테이블명];
2. 숫자를 제외한 모든(문자/특수문자)를 제거
SELECT regexp_replace([컬럼명], '\D', [변경값], 'g') FROM [테이블명];
3. 특수문자 제거
SELECT regexp_replace([컬럼명], '[^a-zA-Z0-9가-힣]', '') FROM [테이블명];
->영문, 숫자, 한글은 살리고 공백, 특문 전체 제거되는듯
SELECT regexp_replace([컬럼명], '[[:punct:]]', '') FROM [테이블명];
-> 특문 전체만 제거
출처: https://bongra.tistory.com/231
출처: https://loveuceci.tistory.com/1703?category=795131
'DB > Oracle' 카테고리의 다른 글
[Oracle] ORA-01841 : 년은 영이 아닌 -4713 과 +4713 사이의 값으로 지정해야 합니다. (2) | 2022.11.02 |
---|---|
[Oracle] 정규식을 활용한 LISTAGG 중복제거 (0) | 2022.09.22 |
[Oracle] LPAD 함수 사용하여 공백 채우기 "0 채우기" (0) | 2022.08.19 |
[Oracle] WITH문과 CREATE TABLE 쓰기 (0) | 2022.08.16 |
[Oracle] 특정 문자의 개수 구하기 (0) | 2022.07.27 |