Loading
플래그 설명
i i 플래그가 붙으면 대·소문자 구분 없이 검색합니다. 따라서 A와 a에 차이가 없습니다
g g 플래그가 붙으면 패턴과 일치하는 모든 것들을 찾습니다. g 플래그가 없으면 패턴과 일치하는 첫 번째 결과만 반환됩니다
m 다중 행 모드(multiline mode)를 활성화합니다. 자세한 내용은 앵커 ^와 $의 여러 행 모드, 'm' 플래그에서 다룰 예정입니다.
s .이 개행 문자 \n도 포함하도록 ‘dotall’ 모드를 활성화합니다
u 유니코드 전체를 지원합니다. 이 플래그를 사용하면 서로게이트 쌍(surrogate pair)을 올바르게 처리할 수 있습니다
y 문자 내 특정 위치에서 검색을 진행하는 ‘sticky’ 모드를 활성화 시킵니다
  • \b: 문자와 공백 사이를 의미한다.
  • \c: 제어 문자를 의미한다.
  • \d: 숫자에 해당하는 유니코드에 대응. [0-9]와 달리 아랍 문자, 페르시아 문자 등 다양한 숫자를 포괄한다.#
  • \f: 폼 피드
  • \n: 개행 문자
  • \s: 공백 문자
  • \t: 탭 문자
  • \v: 수직 탭
  • \w: 단어 영문자+숫자+_(밑줄) [0-9a-zA-Z_]
  • \x: 16진수 값
  • \0: 8진수 값
  • {n} : 정확히 n번 반복할때 일치한다.
  • {n,} : n번 이상 반복할때 일치한다.
  • {n,m} : n번에서 m번 안으로 반복할때 일치한다
  • * : 패턴이 일치하지 않거나 한번 이상 반복할때 일치한다. {0,}과 같다.
  • + : 패턴이 한번 이상 반복할때 일치한다. {1,}과 같다.
  • ? : 패턴이 일치하지 않거나 한번만 반복할때 일치한다. {0,1}과 같다.
  • ^[0-9]*$: 숫자
  • ^[a-zA-Z]*$: 영문자. 패턴변경자를 써서 /^[a-z]*$/i 같이 쓸 수 있다.
  • ^[가-힣]*$: 현대 한글(유니코드를 지원하는 정규식 엔진에 한정)
  • ^[ㄱ-ㅎㅏ-ㅣ가-힣]*$: 한글 자모 낱자를 포함한 모든 현대 한글
  • 굳이 유니코드 환경에서도 KS X 1001 완성형의 현대 한글 2350자만 선택하고 싶다면 완성형/한글 목록/KS X 1001 문서의 끝부분을 참고할 것.
  • ^[a-zA-Z0-9]*$: 영문/숫자
정규식표현 테스트 추출
  • 패턴(pattern)으로 부르는 정규 표현식은 특정 목적을 위해 필요한 문자열 집합을 지정하기 위해 쓰이는 식이다
  • 정규 표현식은 스티븐 클레이니가 정규 집합(regular set)이라는 자신의 수학적 개념을 이용하여 정규 언어를 기술한 1956년이 기원이다
  • 정규 표현식이라는 문구는 일치하는 텍스트가 준수해야 하는
  • 전후방일치 같은 유용한 기능도 아예 지원하지 않는 엔진이 많으므로 주의해야 한다
  • 정규식이라고 해도 각 언어에서 지원하는 정규식 엔진은 그 구현이 제각각 다르기 때문에 항상 정규식을 검증한 다음 사용해야 한다
  • g 플래그가 있으면 부분 문자열 전체를, 없으면 첫 번째 부분 문자열을 교체합니다.
  • 플래그와 특수 기호(추후 학습)가 없는 경우엔 일반적인 부분 문자열 검색과 동일한 방식으로 검색이 진행됩니다.
  • 정규 표현식은 패턴과 선택적으로 사용할 수 있는 플래그 g, i, m, u, s, y로 구성됩니다.
  • 정규식표현,RegExp,regular expression,문자패턴,문자추출,영문단어추출,URL주소추출,이메일추출,한글만추출,숫자만추출,날짜추출,패턴,플래그,정규식
댓글