728x90
1. 정규 표현식(regex)
특정한 규칙의 문자열 집합을 표현하는 데 사용하는 형식 언어
2. 정규 표현식 모듈
import re
string = "aaaa,b,c,e,d"
a = re.search('a+', string)
print(a.span())
3. 정규 표현식 문법
표현식 | 의미 | 표현식 | 의미 |
. | 1개의 문자 | [a,b] | a,b 중 하나 |
a? | 0개 또는 1개의 문자 (a가 하나 있거나 없거나) | [^ab] | a,b 제외 |
a* | 0개 이상의 문자 (a가 0개 이상) | [a-z] | a~z사이의 문자 |
a+ | 1개 이상의 문자 (a가 1개 이상) | \ | 다음 기호를 문자로 사용 |
^a | 뒤의 문자로 시작하는 문자열 (a, ab, apple...) | \b | 문자와 공백 사이 |
$a | 앞의 문자로 끝나는 문자열 (bba, aaa, india...) | \B | 문자와 공백 사이가 아닌 문자 |
a|b | a 또는 b가 존재 | \d | 숫자 |
(a) | ()안의 문자를 하나의 그룹으로 처리 | \D | 숫자가 아닌 문자 |
a{n} | a가 n번 반복 | \s | 공백 |
a{n,} | a가 n번 이상 반복 | \S | 공백이 아닌 문자 |
a{n,m} | a가 n번 이상 m번 이하 반복 | \t | 탭 |
\w | 문자, 숫자, _ 중 하나 | ||
\W | 문자, 숫자, _ 가 아닌 문자 |
4. 문자열 검색
- match() : 문자열의 처음이 정규식과 일치하는지 확인한다.
- search() : 문자열 전체를 검색하여 정규식과 일하는지 확인한다.
- findall() : 정규식과 일치하는 모든 문자열을 list로 반환한다.
- finditer() : 정규식과 일치하는 모든 문자열을 iterable한 객체로 반환한다.
5. 객체의 method
- group() : 일치하는 문자열을 반환한다.
- start() : 일치하는 문자열의 시작 위치를 반환한다.
- end() : 일치하는 문자열의 끝 위치를 반환한다.
- span() : 일치하는 문자열의 (시작위치, 끝 위치) 튜플을 반환한다.
6. 정규표현식 연습 사이트
RegExr: Learn, Build, & Test RegEx
RegExr is an online tool to learn, build, & test Regular Expressions (RegEx / RegExp).
regexr.com
'Python 활용하기' 카테고리의 다른 글
[Algorithm] LIS(Longest Increase Sequence) (0) | 2023.01.12 |
---|---|
시간복잡도 생각하기 (지속 업데이트) (0) | 2022.11.27 |
소수 (Prime Number) (0) | 2022.09.27 |
진법 변환 (0) | 2022.09.25 |
순열과 조합 (0) | 2022.09.07 |