구글/구글 스프레드시트

[구글 스프레드시트] REPLACE 함수로 특정 위치 대체하기

손느린 프로그래머 2022. 9. 2. 18:15
반응형

간혹 개인정보 보호를 위해서, 주민 번호나 이메일 주소 의 일부분을 마스킹해야할 필요가 있습니다. 이 때 유용하게 사용되는 함수가 REPLACE 함수 입니다. 

 

REPLACE 함수 사용 목적

  • 문자열의 특정 위치부터 주어진 길이만큼을 다른 문자로 대체함
  • 주민번호, 이메일 등을 마스킹할 때 사용
    : 예) 010-9999-9999  → 010 - 9999 - ****

 

※ 일반적으로 SUBSTITUTE 와 혼동되기 쉬운데요. SUBSTITUTE 함수는 특정 문자 패턴을 찾아서 대체하는 것이라면, REPLACE는 문자열의 위치를 기준으로 문자를 바꿔줍니다. 따라서 REPLACE는 형식이 정해진 문자열을 대체할 때 사용하는 것이 좋습니다.

REPLACE 함수 형식

=REPLACE( 텍스트 , 위치, 길이, 대체 텍스트 )
  • 텍스트 : 편집할 문자열이나 이를 저장한 셀의 위치
  • 위치 : 대체할 문자열이 있는 위치
  • 길이 : 대체될 문자의 개수
  • 대체 텍스트 : 원래 문자를 대체한 텍스트

REPLACE 함수 사례

주민번호 뒷자리 6자리를 * 로 덮어쓰고 싶다면 아래와 같이 활용할 수 있습니다.

  • REPLACE("123456-7890123", 9, 6, "******" ) → 123456-7******

구글 스프레드 시트에서 사용한 사례입니다. 

https://docs.google.com/spreadsheets/d/1zUZL84VVpoIAH_aERo5-wzcqsBLp8XN95Ydar4zTv94/edit?usp=sharing 

 

참고사항

  • 복잡한 표현은 REGEXREPLACE 함수 사용
    실제 상황에서는 좀 더 복잡한 문자 패턴을 대체해야 하는 경우가 있습니다. 이때는 복잡한 패턴 정의가 가능한 정규 표현식을 활용한 대체 기능을 사용하시는 것이 좋습니다. 

  • 특정 문자열을 찾아서 대체하는 것은 SUBSTITUTE 함수를 사용
    가령 "-" 을 찾아서 일괄적으로 정리하고 싶다면, SUBSTITUTE 함수로 "-"을 찾아서 대체하십시요


  • REPLACE 쓰기 전에 TRIM으로 불필요한 공백은 제거하고 작업하면 좋습니다. 
    REPLACE 는 문자열의 위치를 기준으로 대체할 영역을 찾습니다. 만약 앞뒤 공백이 있다면 이 위치가 변해서 원하는 결과를 얻지 못할 수도 있습니다. REPLACE 사용하기 전에 공백을 제거하시는 것이 좋습니다. 

 

이상 구글스프레드시트 REPLACE 함수 설명이었습니다. 

 

반응형