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

JavaScript RegExp source 속성이란? 정규식 패턴 문자열 확인 방법

JavaScript의 source 속성은 RegExp 객체가 가진 읽기 전용(read-only) 문자열 속성입니다. 이 속성에는 해당 정규 표현식 객체에 설정된 패턴(pattern)의 원본 텍스트가 그대로 저장되어 있습니다.

다만 주의할 점은, source 속성 값에는 아래 두 가지가 포함되지 않는다는 것입니다.

  • 정규식 리터럴을 감싸는 구분용 슬래시(/)
  • g(전역 검색), i(대소문자 무시), m(여러 줄 모드) 등의 플래그

예를 들어 /script/g라는 정규식을 만들었다면, source 속성은 오직 script라는 순수한 패턴 문자열만 반환합니다.

사용 예제

아래 코드를 실행하면 JavaScript에서 source 속성을 어떻게 활용하는지 직접 확인할 수 있습니다.

<html>
   <head>
      <title>JavaScript RegExp source Property</title>
   </head>

   <body>
      <script>
         var str = "JavaScript is an interesting scripting language";
         var re = new RegExp("script", "g");
         re.test(str);

         document.write("The regular expression is : " + re.source);
      </script>
   </body>
</html>

실행 결과

The regular expression is : script

위 예제에서는 new RegExp("script", "g")로 정규식 객체를 생성했습니다. 생성 시 플래그로 "g"를 지정했음에도 불구하고, re.source를 출력하면 플래그가 제외된 순수한 패턴인 script만 화면에 표시되는 것을 확인할 수 있습니다. 이처럼 source 속성은 디버깅 시 현재 정규식 객체에 어떤 패턴이 적용되어 있는지 빠르게 파악할 때 유용하게 활용됩니다.