1 분 소요

정규표현식

정규 표현식은 문자열의 패턴을 표현하는데 사용되는 형식 언어이다. 주로 문자열에서 원하는 패턴을 찾거나 추출할 때, 검색, 치환, 분리 등의 작업에 활용된다..

[] 문자 : 문자 클래스

[]은 [ 와 ] 사이의 문자들과 매치하라는 의미를 갖는다.

[] 사이에는 어떤 문자도 들어갈 수 있다.

[abc]
# a, b, c 중 한개의 문자와 매치

하이픈(-)

[] 안에 있는 두 문자 사이 - 를 사용하면 두 문자 사이의 범위를 뜻한다.

예를 들어,

[a-zA-Z]
# 모든 알파벳

not(^)

^은 not의 의미를 가지고 있다

[^0-9]
# 숫자가 아닌 다른 모든 문자와 매치

별도 표기법

  • \d : 숫자
  • \D : 숫자가 아닌 문자와 매치
  • \s : 공백 문자(tab, space, new line 등등)와 매치
  • \S : 공백 문자가 아닌 문자
  • \w : 문자 또는 숫자
  • \W : 문자 또는 숫자가 아닌 문자

.(dot)

dot 문자는 \n을 제외한 모든 문자와 매치한다.

[a.b] 
# a와 b 사이 \n을 제외한 모든 문자가 올 수 있다.

a[.]b
# .문자 그대로를 의미한다.

*

*는 * 앞에 있는 문자를 0번 이상의 횟수 만큼 반복할 수 잇다는 의미이다.

a*
# a를 0번 이상 반복

+

+는 + 앞에 있는 문자를 1번 이상 반복할 때 사용한다.

a+
# a를 1번 이상 반복

{}

{}은 괄호 안의 조건만큼의 횟수 만큼 반복할 때 사용한다.

  • {m} : 딱 m회 반복

  • {m, n} : m회 이상 n회 이하 반복

    fro{3}g
    # frooog
      
    fro{2, 3}
    # froog, frooog
    # frog => 해당 x
    

?

?은 {}와 비슷한 메타문자로, {0, 1}와 동일한 역할을 한다. 1회만 있어도 되고 없어도 된다.

댓글남기기