Computer >> 컴퓨터 >  >> 프로그래밍 >> JavaScript

JavaScript에서 문자열의 모든 항목을 바꾸는 방법 완벽 가이드

JavaScript에서 문자열의 모든 항목을 바꾸는 방법

JavaScript에서 문자열 내 특정 단어나 구문을 다른 값으로 교체하려면 replace() 메서드를 사용합니다. 기본적으로 replace()는 첫 번째로 일치하는 항목만 바꾸기 때문에, 문자열의 모든 항목을 한 번에 교체하려면 정규 표현식과 g(전역) 플래그를 함께 사용해야 합니다.

replace() 메서드와 g 플래그 사용 예제

아래 예제는 문장 안에 있는 'loves'라는 단어를 모두 'likes'로 변경하는 코드입니다.

<html>
   <body>
      <script>
         var str1 = 'John loves studying. He loves Football too!';
         var str2 = str1.replace(/loves/g, "likes");
         document.write(str2);
      </script>
   </body>
</html>

실행 결과

John likes studying. He likes Football too!

코드 설명

  • /loves/g: 슬래시 사이의 'loves'는 찾을 패턴이며, 뒤에 붙은 g 플래그(global)는 문자열 전체에서 일치하는 모든 항목을 대상으로 지정합니다.
  • "likes": 일치하는 패턴을 대체할 새로운 문자열입니다.

만약 g 플래그 없이 str1.replace("loves", "likes")처럼 작성하면 첫 번째 'loves'만 'likes'로 바뀌고 두 번째 항목은 그대로 유지되므로 주의해야 합니다.

참고: replaceAll() 메서드

ES2021(JavaScript 최신 버전)부터는 더 직관적인 replaceAll() 메서드도 사용할 수 있습니다. 정규 표현식 없이 모든 항목을 간단히 교체하고 싶다면 아래와 같이 작성하면 됩니다.

var str2 = str1.replaceAll("loves", "likes");

구형 브라우저 호환성이 필요한 경우에는 위 예제처럼 replace() 메서드와 g 플래그를 조합하는 방식이 가장 안전합니다.