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

자바스크립트 정규 표현식(RegExp)으로 숫자 찾기 – \d 메타 문자 완벽 가이드

정규 표현식으로 숫자(0~9) 찾기

자바스크립트 정규 표현식(RegExp)에서 숫자(0~9)를 찾으려면 \d 메타 문자를 사용하면 됩니다. 이 패턴은 아라비아 숫자 한 글자와 일치하며, 반대로 숫자가 아닌 문자를 찾고 싶다면 대문자 형태인 \D를 사용하면 됩니다.

\d

예제 코드

다음 예제는 문자열 "100% Responsive!"에서 모든 숫자를 찾아 화면에 출력하는 코드입니다. match() 메서드와 전역 검색 플래그인 g를 함께 사용하면, 문자열 안에서 일치하는 모든 숫자를 배열 형태로 한 번에 얻을 수 있습니다.

<html>
   <head>
      <title>JavaScript Regular Expression</title>
   </head>
   <body>
      <script>
         var myStr = "100% Responsive!";
         var reg = /\d/g;

         var match = myStr.match(reg);

         document.write(match);
      </script>
   </body>
</html>

코드 설명 및 실행 결과

위 코드의 동작 방식을 단계별로 살펴보면 다음과 같습니다.

  • var myStr: 검색 대상이 되는 원본 문자열입니다.
  • /\d/g: 숫자 한 글자를 의미하는 \d 패턴에 g(global) 플래그를 붙여, 첫 번째 일치 항목뿐 아니라 문자열 전체의 모든 숫자를 검색하도록 설정했습니다.
  • myStr.match(reg): 정규 표현식과 일치하는 모든 결과를 배열로 반환합니다.

이 코드를 실행하면 문자열에 포함된 세 개의 숫자가 차례대로 출력됩니다.

1,0,0

추가 팁

연속된 숫자 전체를 하나의 값으로 찾고 싶다면 /\d+/g처럼 수량자 +를 붙이면 됩니다. 위 예제에서는 ["1", "0", "0"]이 반환되지만, \d+를 사용하면 ["100"]처럼 연속된 숫자가 하나의 요소로 묶여 반환됩니다. 상황에 맞게 두 패턴을 활용해 보세요.