정규 표현식은 개발자라도 잘 모를 수 있는 주제라 처음 파이썬을 배우는 사람에게는 어울리지 않을 수도 있다. 하지만 정규 표현식을 익히면 매우 달콤한 열매를 맛볼 수 있다. 하지만 정규 표현식을 잘 다르게 되면 유용한 쓰임새가 있을 것 같다.
정규 표현식은 복잡한 문자열을 처리할 때 사용하는 기법으로, 파이썬만의 고유한 문자열을 처리하는 모든 곳에서 사용하는 일종의 형식 언어이다.
정규 표현식은 왜 필요한가?
다음과 같은 문제가 주어졌다고 가정해 보자.
주민등록번호를 포함하고 있는 텍스트가 있다. 이 텍스트에 포함된 모든 주민등록번호의 뒷자리를 * 문자로 변경해 보자.
먼저 정규 표현식을 전혀 모르면 다음과 같은 순서로 프로그램을 작성해야 할 것이다.
- 전체 텍스트를 공백 문자로 나눈다(split).
- 나뉜 단어가 주민등록번호 형식인지 조사한다.
- 단어가 주민등록번호 형식이라면 뒷자리를 *로 변환한다.
- 나뉜 단어를 다시 조립한다.
이른 구현한 코드는 다음과 같을 것이다.
반면 정규식을 사용하면 다음처럼 휠씬 간편하고 직관적인 코드를 작성할 수 있다.
정규 표현식을 사용하면 이렇게 코드가 간결해진다. 만약 찾으려는 문자열 또는 바꾸어야 할 문자열의 규칙이 매우 복잡하다면 정규식의 효용은 더 커지게 된다.
학습을 마치고
정규 표현식을 공부하는 건 정말 어려울 것 같아 공부를 이어갈지 고민이 많이 되었다. 그래도 하는 게 나을 것 같아 이어서 학습을 진행해 보는 중이다. 오늘은 딥러닝 공부가 하기 싫기도 하고 당분간은 파이썬 공부에 집중해보고 싶어졌다. 그리고 한 달 전에 공부하고 싶었으나 하지 못했던 공부를 이어가려고 한다.
'프로그래밍 언어 > 파이썬' 카테고리의 다른 글
텍스트 다루기 - 문자열 줄여 표시하기 및 긴 문장 줄 바꿈 그리고 정규 표현식에 대하여 (0) | 2024.10.05 |
---|---|
정규 표현식 2 - 정규 표현식 시작하기 (0) | 2024.10.05 |
파이썬 날아오르기 4 - 파이썬 타입 어노테이션 (0) | 2024.10.05 |
파이썬 날아오르기 3 - 이테러이터와 제너레이터 (0) | 2024.10.05 |
파이썬 날아오르기 2 - 클로저와 데코레이터 (0) | 2024.10.05 |