[파이썬] re 라이브러리 활용한 정규표현식②

5. 또 다른 반복 표현 {n}, {n,m}

: 문자열을 특정할 수 있는 또 다른 반복 구문 표현으로 {n}, {n,m}이 있다. 해당 구문은 앞에 등장한 문자가 반복되는 회수를 n번 혹은 m~n번 사이로 지정할 수 있는 특징이 있다.  

  • {n} : 앞 문자가 n번 반복되는 패턴
  • {m,n} : 앞 문자가 m ~ n 사이의 수만큼 반복되는 패턴

예제 6) {n} 사용된 패턴을 통해 문자열 적용 유무 확인

- {n} 사용 위한 컴파일 함수 사용

- {n} 앞에 놓인 문자 A가 n 숫자에 맞게 등장한 경우

- {n} 앞에 놓인 문자 A가 n 숫자보다 적게 등장한 경우  → n 수를 충족하지 않아 문자열 특정하지 못함

 

예제 7) {m, n} 사용된 패턴을 통해 문자열 적용 유무 확인

- {m,n} 사용 위한 컴파일 함수 사용

- {n} 앞에 놓인 문자 A가 n 숫자에 최소값으로 등장한 경우

- {n} 앞에 놓인 문자 A가 n 숫자에 최대값으로 등장한 경우

 

6. [ ]괄호 : 괄호 안에 들어가는 문자가 들어 있는 패턴

: [ ] 괄호는 특정 위치에 대한 지정 없이 찾고자 하는 문자가 들어가 있는지 여부를 확인하기 위해 사용된다. 별도의 기호 없이 사용할 경우 해당 문자열을 알파벳 혹은 숫자 개별 단위로 찾는 특성이 있다. [ ] 괄호는 기호의 활용을 통해 보다 다양하게 활용 가능한데, 하이픈 (-) 표시를 통해 범위를 표시할 수 있으며, (^) 기호를 통해 반대로 괄호 안에 있는 것들을 제외한 문자열을 탐색할 수도 있다.  

  • [abc]괄호는 a, b, c 중 하나가 들어가 있는 패턴을 의미
  • [c-e]는 c,d,e 중 하나가 들어가 있는 패턴을 의미(0-9, A-Z, 가-힣 등으로 응용 가능)
  • [^a-z]는 소문자가 아닌 문자가 들어가 있는 패턴을 의미

예제 8) [ ] 사용된 패턴을 통해 문자열 적용 유무 확인

- [ ] 기능 사용을 위한 패턴 컴파일 함수 사용

- [ ] 괄호 안에 놓인 문자가 등장한 경우 → 첫 번째 등장값 반환

- [ ] 괄호 안에 놓인 문자가 등장하지 않은 경우  → 문자열 특정하지 못함

예제 9) 하이픈(-) 사용된 패턴을 통해 문자열 적용 유무 확인

- [-] 기능 사용을 위한 컴파일 함수 사용

- [-] 범위 내에 놓인 문자가 등장한 경우 → 첫 번째 등장한 번위값 반환

- [-] 범위 내에 놓인 문자가 등장하지 않은 경우  → 문자열 반환하지 못함

예제 10) (^) 사용된 패턴을 통해 문자열 적용 유무 확인

- (^) 기능 사용을 위한 컴파일 함수 사용

- [-] 범위 내에 놓인 문자가 등장한 경우 → (^) 기능으로 문자열 반환하지 못함

- [-] 범위 내에 놓인 문자 외 다른문자가 등장하지 않은 경우  → (^) 기능으로 문자열 반환

 

7. 정규 표현식 라이브러리 함수 사용법

1) match와 search 함수

  • match : 문자열 처음부터 정규식과 매칭되는 패턴을 찾아서 리턴
  • search : 문자열 전체를 검색해서 정규식과 매칭되는 패턴을 찾아서 리턴

예제 11) 같은 구문에 대한 match와 seach 함수 차이

- match와 search 함수의 차이를 알아보기 위한 컴파일 함수 사용

- 동일 구문에 대한 match와 search 함수 차이 확인  search는 구문의 처음부터 적용되어 대문자 안 됨을 확인

2) findall 함수: 정규표현식과 매칭되는 모든 문자열을 리스트 객체로 리턴

예제 12) findall 함수의 기능 확인

- findall 함수의 기능을 알아보기 위한 컴파일 함수 사용

- 구문에 대한 findall 함수의 기능 확인 → [a-z]+ 의 기준에 맞는 문자열 단위들을 리스트 형태로 반환

3) split 함수 : 찾은 정규 표현식 문자열을 기준으로 기존의 문자열을 분리

- split 함수의 기능을 알아보기 위한 컴파일 함수 사용

- 구문에 대한 split 함수의 기능 확인 → [-]을 기준점으로 나눠진 문자열들을 리스트 형태로 반환

+ Recent posts