관리 메뉴

클라이언트/ 서버/ 엔지니어 " 게임 개발자"를 향한 매일의 공부일지

정규 표현식 1 - 정규 표현식 살펴보기 본문

프로그래밍 언어/파이썬

정규 표현식 1 - 정규 표현식 살펴보기

huenuri 2024. 10. 5. 11:05

정규 표현식은 개발자라도 잘 모를 수 있는 주제라 처음 파이썬을 배우는 사람에게는 어울리지 않을 수도 있다. 하지만 정규 표현식을 익히면 매우 달콤한 열매를 맛볼 수 있다. 하지만 정규 표현식을 잘 다르게 되면 유용한 쓰임새가 있을 것 같다.

정규 표현식은 복잡한 문자열을 처리할 때 사용하는 기법으로, 파이썬만의 고유한 문자열을 처리하는 모든 곳에서 사용하는 일종의 형식 언어이다.


 

 

 

정규 표현식은 왜 필요한가?

다음과 같은 문제가 주어졌다고 가정해 보자.

주민등록번호를 포함하고 있는 텍스트가 있다. 이 텍스트에 포함된 모든 주민등록번호의 뒷자리를 * 문자로 변경해 보자.

 

먼저 정규 표현식을 전혀 모르면 다음과 같은 순서로 프로그램을 작성해야 할 것이다.

  1. 전체 텍스트를 공백 문자로 나눈다(split).
  2. 나뉜 단어가 주민등록번호 형식인지 조사한다.
  3. 단어가 주민등록번호 형식이라면 뒷자리를 *로 변환한다.
  4. 나뉜 단어를 다시 조립한다.

이른 구현한 코드는 다음과 같을 것이다.

 

 

 

반면 정규식을 사용하면 다음처럼 휠씬 간편하고 직관적인 코드를 작성할 수 있다.

 

 

 

정규 표현식을 사용하면 이렇게 코드가 간결해진다. 만약 찾으려는 문자열 또는 바꾸어야 할 문자열의 규칙이 매우 복잡하다면 정규식의 효용은 더 커지게 된다.

 


 

 

 

학습을 마치고

정규 표현식을 공부하는 건 정말 어려울 것 같아 공부를 이어갈지 고민이 많이 되었다. 그래도 하는 게 나을 것 같아 이어서 학습을 진행해 보는 중이다. 오늘은 딥러닝 공부가 하기 싫기도 하고 당분간은 파이썬 공부에 집중해보고 싶어졌다. 그리고 한 달 전에 공부하고 싶었으나 하지 못했던 공부를 이어가려고 한다.