본문 바로가기
데이터분석

데이터 정리 - 정규식 패턴 실습하기

by ADELA_J 2023. 7. 4.

<정규식으로 전화번호 패턴 찾기>

1. 테스트 데이터를 준비한다.

요고가지고 할것이다.

2. match 메서드를 사용해 pattern 인자에 10개의 숫자를 의미하는 \d 10개를 넣고 

string에는 문자열을 전달해서 패턴을 찾으면 match 오브젝트를 반환할 수 있게 해줌

찾고나니 span에는 패턴의 인덱스와 찾은 패턴의 문자열을 보여주고 있음. 

3. bool 메서드에 m을 전달하니 match가 되어서 True라는 결과값을 반환 받을 수 있음.

조건문을 돌려보니 매치된단

4. (29-30) 첫번째와 마지막 인덱스 반환

(31) span은 찾은 패턴의 첫번째와 마지막 인덱스 한꺼번에 반환

(32) group 은 찾아낸 패턴을 반환

 

5. 하지만 전화번호 적으라면 깔끔하게 123457789 이렇게 잘 쓰는 사람들만 있는 것이 아니지.

010 1235 15412 이렇게 쓰는 사람도 있을것이고 010-2535-1238 이렇게 쓰는 사람들도 있을것이고.

그렇게 되면 못찾는다 ㅠ

* \d\d\d\d\d\d\d\d\d\d\d = \d{10}

 

6. 그래서 빈칸을 의미하는\s? 정규식을 넣어서 다시 작성해서 찾아주니 찾을 수 있었다.

 

7. 지역코드 같이 소괄호로 감싼 것들은 이런 정규식을 쓸 수 있다.

8. 국가 코드까지 있으면 이렇게......................

*** 패턴을 반복해서 사용하려면 compile 메서드로 저장한다음에 사용하면 됨.

#이건 다른 메서드들 변수로 지정해서 반복해서 사용하는 거랑 같은 것 같다.

<compile>읽어보기

출처 : 파이썬 공식 홈페이지