[python] 정규표현식1

HyunDong Lee·2022년 3월 24일
0

python

목록 보기
4/6
post-thumbnail

정규표현식이란?

Regular expressions, 특정한 규칙을 가지는 문자열의 집합을 표현하는 데 사용하는 형식언어이다. 복잡한 문자열의 검색과 치환을 하기 위해 많이 사용된다.

Meta characters

. ^ * $ + ? \ | ( ) { } [ ]

문자가 가진 원래의 의미가 아닌 특별한 용도로 사용되는 문자.

[]

[]는 대괄호 안에 포한된 문자들 중 적어도 하나와 매치 여부를 뜻한다.

[abc]

'a' # a와 매치
'bird' # b와 매치
'dre' # 매치 없음.

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

[a-d] #a, b, c, d [abcd]
[0-9] # 숫자
[a-zA-Z] # 모든 알파벳

빈출 문자 클래스

  • \d - 숫자와 매치, [0-9]와 같은 의미
  • \D - 숫자가 아닌것과 매치, [^0-9]와 동일한 표현식이다.
  • \s - whitespace 문자와 매치, [^\t\n\r\f\v]와 동일한 표현식이다.
  • \S - whitespace 문자가 아닌 것과 매치, [^\t\n\r\f\v]와 같은 표현식.맨 앞의 빈칸은 공백 문자를 의미한다.

Dot 연산

cd.de

=> cd + 모든 문자 + de

if a[.]b이라면 문자클라스 [] 안에 있는 dot(.) 메타 문자가 사용된다면 이것은 모든 문자가 아닌 문자 . 그대로를 의미한다.

반복

ca*t # a가 0부터 무한대로 반복 가능
ca+t # a가 최소 1번 이상 반복
ca{m, n}t # n~m번 반복 {1,}= +, {0,} = * 
ca?t # 1 or 0, 있거나 없거나

0개의 댓글