본문 바로가기

웹프로그래밍/Javascript

Javascript(자바스크립트) 특정 문자를 대체하는 replace 함수

# replace();

 

replace 함수는 문자열에서 특정 문자를 다른 문자로 바꾸는 함수이다. 함수를 적용하는 문자열은 바뀌지 않으며 바뀐 문자열이 반환된다. 직접 문자를 써서 특정 문자를 바꿀 수도 있고, 정규식을 이용하여 문자를 바꿀 수도 있다.

 

# 구문

str.replace("바꿀 문자", "바뀌는 문자")

 

str은 텍스트가 들어있는 변수이며, 첫번째 인자로는 str에 들어있는 문자 중 바꾸고 싶은 문자를 직접 문자로 입력하거나 정규식을 입력하며, 두번째 인자로는 첫번째 인자를 변경할 문자를 적으면 된다.

 

# 예제

let str = "안녕하세요. undefiend님. undefiend님을 만나봬서 영광입니다."
let newStr = str.replace("undefiend", "이용자");

// newStr === 안녕하세요. 이용자님. undefiend님을 만나봬서 영광입니다.

 

다음과 같이 사용하면 undefiend 부분이 이용자로 바뀌는 것을 볼 수 있다. 이때 첫번째 단어는 바뀌었지만 두번째 문자는 그대로인 것을 볼 수 있는데 replace는 기본적으로 가장 처음 만나는 문자만 바꾸기 때문이다.

 

이때 모든 문자를 바꾸고 싶으면 정규식을 사용해야한다.

 

정규식은 / 정규식 내용 /옵션  이렇게 슬래시 안에 쓰이며 다양한 정규식이 존재한다.

 

# 수정한 예제

let str = "안녕하세요. undefiend님. undefiend님을 만나봬서 영광입니다."
let newStr = str.replace(/undefiend/g, "이용자");

// netStr === 안녕하세요. 이용자님. 이용자님을 만나봬서 영광입니다.

 

 

# 여담

정규식에는 정말 다양한 문법이 존재한다. 이 모든걸 외우는 것은 많이 힘드니 필요할때 마다 정규식을 찾아서 사용하는 것이 적절하다고 느낀다.