[JavaScript] 자바스크립트 replace, replaceAll 함수 문자열 치환 방법

본 포스팅에서는 자바스크립트에서 문자나 문자열을 다른 것으로 치환하는 방법에 대해 다루어볼까합니다.

가장 먼저 떠오르는 방법은 바로 문자열 메서드인 replacereplaceAll 함수를 사용하는 것인데요.

replace replaceAll 사용 문법

"문자열".replace(패턴, 대체);
"문자열".replaceAll(패턴, 대체);

*사용 문법이 같은 두 함수의 다른 점은 아래 사용 예제에서 다루겠습니다.

매개변수

  1. 패턴: 정규 표현식 또는 문자열, 치환이 될 패턴
  2. 대체: 첫 번째 매개변수를 대신하게 될 문자열 또는 함수

즉, 첫 번째 매개변수가 바꾸고 싶은 패턴으로 정규 표현식 또는 문자열이며 두 번째 매개변수인 문자열 또는 함수로 치환되는 것입니다.

반환값

치환된 새로운 문자열을 반환합니다.

사용 예제

replace

let text = "junsview를 방문해주셔서 감사합니다 -junsview";
let result = text.replace("junsview", "준스뷰");

console.log(result);

결과값:

문자열 replace

text 문자열에서 “junsview“라는 패턴을 찾아서 한글인 “준스뷰” 로 치환한 문자열이 result 입니다. 여기서 하나 주의해야할 점은 뒤에 나오는 “junsview“는 한글로 치환되지 않았다는 점인데요.

replace 함수는 처음으로 찾은 패턴만 치환하기 때문입니다.

만약 모든 일치하는 패턴을 치환하고 싶다면, 정규 표현식을 사용하거나 replaceAll 함수를 사용하면 됩니다.

*정규표현식: 문자열의 일정한 패턴을 표현하는 일종의 형식 언어

replace + 정규 표현식

// 정규 표현식 사용
let text = "junsview를 방문해주셔서 감사합니다 -junsview";
let result = text.replace(/junsview/g, "준스뷰");

console.log(result);

결과값:

정규 표현식을 사용하면 가능한 문자열 치환 활용이 더 많아집니다. 만약 정규 표현식에 대해 더 알고 싶으시다면 다음을 참고해주세요.

replaceAll

// replaceAll 사용
let text = "junsview를 방문해주셔서 감사합니다 -junsview";
let result = text.replaceAll("junsview", "준스뷰");

console.log(result);

결과값:

문자열 replaceAll

replaceAll 함수는 모든 패턴을 치환하고, replace 함수는 처음 나타나는 패턴만 치환한다는 것이 두 메서드가 다른 점입니다.

이렇게 자바스크립트에서 문자/문자열을 치환하는 replace, replaceAll 메서드에 대해 알아보았습니다.

답글 남기기