728x90
2024.02.02 - [PYTHON] - [PYTHON] 정규표현식 활용하기
이번 글에서는 정규표현식의 다양한 메타 문자들을 알아보겠다!
메타 문자
: 메타 문자란 문자가 가진 원래의 의미가 아닌 특별한 용도로 사용되는 문자로, 정규표현식에서 사용되는 다양한 메타 문자가 있다.
. ^ $ * + ? \ | ( ) { } [ ]
[ ]
: 대괄호 안에 포함된 문자들 중 하나와 매치
[abc]
# abc 중 하나와 매치
'a' # a와 매치
'boy' # b와 매치
'dye' # a, b, c 중 어느 문자와도 매치되지 않음
-
: 두 문자 사이의 범위
[a-c] # [abc]와 같음
[0-5] # [012345]와 같음
[a-zA-Z] # 모든 알파벳
[0-9] # 숫자
^
: 반대 의미
[^0-9] # 숫자를 제외한 문자만 매치
[^abc] # a, b, c를 제외한 모든 문자와 매치
.
: 모든 문자와 매치
a.b # 'a + 모든 문자 + b'를 뜻함
aab # a와 b 사이의 a는 모든 문자에 포함되므로 매치
a0b # a와 b 사이의 0은 모든 문자에 포함되므로 매치
abc # a와 b 사이에 문자가 없기 때문에 매치되지 않음
* 만약 [] 사이에 .을 사용하면 마침표를 의미한다.
a[.]b
###########
a.b # a와 b 사이에 마침표가 있으므로 매치
a0b # a와 b 사이에 마침표가 없으므로 매치 안됨
*
: * 앞에 문자가 0개 이상이면 모두 매치
lo*l
############
ll # 매치
lol # 매치
looool # 매치
looooooooooooooooooooool # 매치
lbl # 매치 안됨
loooooooooooobooooooool # 매치 안됨
+
: 최소 1번 이상 반복되면 매치
lo+l
###########
ll # 매치 안됨
lol # 매치
looooool # 매치
?
: 없거나 하나 있을 때 매치
lo?l
##########
ll # 매치
lol # 매치
lool # 매치 안됨
{m, n}
: 문자가 m번에서 n번까지 반복될 때 매치
lo{3, 5}l
#######
ll # 매치 안됨
lol # 매치 안됨
loool # 매치
loooool # 매치
looooool # 매치 안됨
|
: 여러 개의 표현식 중 하나. or의 의미
a|b|c
##########
a # 매치
b # 매치
c # 매치
a b # 매치
a b c # 매치
d # 매치 안됨
^
: 문자열의 제일 처음과 매치
^ 뒤에 있는 문자로 시작되면 매치
^a
#########
a # 매치
aaa # 매치
baaa # 매치 안됨
eeaaa # 매치 안됨
$
: 문자열의 가장 마지막과 매치
$ 앞에 있는 문자로 끝나면 매치됨
a$
#########
a # 매치
aa # 매치
baa # 매치
aabb # 매치안됨
728x90
'PYTHON' 카테고리의 다른 글
[PYTHON] 문자열 채우기 - zfill, rjust, ljust, center (0) | 2024.08.14 |
---|---|
[PYTHON] 정규표현식 조건 표현식 (0) | 2024.04.05 |
[PYTHON] 진수변환 (0) | 2024.03.20 |
[PYTHON] 문자/숫자인지 확인하기 - isalpha, isdigit, isalnum (0) | 2024.03.02 |
[PYTHON] 분수 표현, 사칙연산 - Fraction (0) | 2024.02.22 |