[python] 11. 정규 표현식 1
1. 정규 표현식
- 텍스트를 검색할 때 Ctrl + F 로 찾는 것을 좀더 발전 시킨 형태
- 글자 자체를 가지고 찾는게 아니라 패턴을 사용함
* 오피스 프로그램은 찾기(바꾸기)기능에서 정규식을 지원함
2. 정규식 사용 사례
1) 입력 유효성 체크
2) 테스트에서 특정 부분을 추출
3) 특정 텍스트 바꾸기
4) 큰 텍스트를 작게 쪼개기
- Ex) 콤마나 점으로 구분해서 문장 쪼개기
3. 정규식 문법
- "/패턴/" : / 사이에 패턴을 표시
1) 숫자 관련 정규 표현식
표현식 |
설명 |
\d |
0 부터 9까지 한자리 숫자를 표현 |
2) 발생 홧수 관련 정규 표현식
표현식 | 설명 |
? |
0 또는 1번 발생 |
* |
0 또는 여러번 발생 |
+ |
1번 이상 발생 |
{n} |
n번 발생 |
{n,m} | n번 또는 m번 발생 |
3) 단일 문자 관련 표현식
표현식 |
설명 |
[] |
[] 속의 글자들은 순서에 관계 없이 한글자를 표현 |
[0-9] |
0 부터 9까지를 표현 |
\w |
숫자와 문자(대소문자 포함),_(언더스코어)를 표현 |
A|B | A또는B 둘중 하나를 의미한다 |
4) 특수 문자 관련 표현식
표현식 | 설명 |
\s | 공백 문자 |
. | \n을 제외한 모든 문자 |
\. | \(역슬러시)를 사용하여 .을 표현 한다. |
\b | 바운더리 앞 뒤로 아무런 문자가 없음을 의미한다. |
^ | 시작을 표시 |
$ | 끝을 표시 |
5) 그룹 핑
표현식 |
설명 |
() |
()를 사용하여 하나의 단위로 묶어 준다. |
4. 정규식 문법 예제
1) 이메일 주소 패턴
(1) 사용자 이름
- [a-zA-Z0-9._%+-]+
(2) @ 심벌
- @
(3) 도메인명
- [a-zA-Z0-9.-]+
(4) dot something
- \.(com|net|co.kr)
(5) 웹 주소 패턴 표현
2) 테스트 사이트
5. python에서 정규식 사용법
- re 모듈을 이용하여 정규 식을 사용한다.
- re.match() 함수를 이용하녀 정규 표현식을 사용 가능하다.
6. python에서 패턴 컴파일
7. python 에서 패턴과 소스를 비교하는 다른 방법
'ProgrammingLang > python' 카테고리의 다른 글
[python] 13. 파일 다루기 (0) | 2018.11.15 |
---|---|
[python] 12. 정규 표현식 2 - search(), findall (0) | 2018.11.15 |
[python] 10. 문자열 다루기 2탄 (pyperclip) (0) | 2018.11.13 |
[python] 9. 모듈과 패키지 (0) | 2018.11.12 |
[python] 8. 함수 (0) | 2018.11.09 |