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

자바스크립트 RegExp exec() 메서드의 역할과 사용 방법

JavaScript의 exec() 메서드는 정규 표현식(RegExp) 객체에 포함된 메서드로, 지정한 패턴이 문자열 안에 존재하는지 검색하는 역할을 합니다.

검색 결과 일치하는 항목이 발견되면 그 결과를 담은 배열을 반환하며, 일치하는 항목이 하나도 없으면 null을 반환합니다. 이때 반환되는 배열에는 단순히 일치한 텍스트뿐만 아니라 index(일치가 시작된 위치)와 input(검색 대상이 된 원본 문자열) 같은 추가 정보도 함께 들어 있습니다.

예제

다음 코드를 실행하면 JavaScript 정규 표현식에서 exec() 메서드를 실제로 활용하는 방법을 확인할 수 있습니다.

<html>
   <head>
      <title>JavaScript Regular Expressions</title>
   </head>
   <body>
      <script>
         var myStr = "Welcome to our website! Welcome to Tutorialspoint!";
         var res = /t/.exec(myStr);
         document.write(res);
      </script>
   </body>
</html>

위 예제에서는 정규 표현식 /t/를 사용해 문자열에서 소문자 't'가 처음 등장하는 위치를 찾습니다. exec() 메서드는 가장 먼저 일치한 부분만 반환하기 때문에 화면에는 t가 출력됩니다.

참고 사항

exec()는 일치 여부만 true/false로 알려주는 test() 메서드와 달리, 일치한 내용과 위치 정보를 상세하게 얻을 수 있다는 점이 큰 차이입니다. 또한 정규 표현식에 g(전역 검색) 플래그를 함께 사용하면 exec()를 반복 호출할 때마다 다음 일치 항목을 순차적으로 찾을 수 있습니다.