반응형
정규표현식 그룹
import re
list_c = ['코끼리는 코끼리', '강아지는 강아지', '고양이는 고양이']
p = re.compile(r'(?P<name>.+).\s\1')
for i in list_c:
print(p.match(i).group('name'))
==결과==
코끼리
강아지
고양이
- 특정구간을 ()로 묶어 그룹으로 만들 수 있다.
- 그렇게 묶인 group은 순서대로 번호가 메겨져 .group(n)으로 뽑을 수 있다.
- 그룹을 만들때 제일 앞에 ?P<그룹이름>을 넣어 그룹 이름을 부여할 수도 있다.
- 그렇게하면 .group('그룹이름')으로 뽑을 수 있다.
예제
Q. ['김철수 - 학점 2.0', '박철수 - 학점 3.0', '이철수 - 학점 4.0']에서 학점을 모두 4.5로 바꿔주세요!
list_d = ['김철수 - 학점 2.0', '박철수 - 학점 3.0', '이철수 - 학점 4.0']
p = re.compile(r'(?P<name>\w+)\s-\s(?P<grade>\w+)\s(?P<num>\d.\d)')
for i in list_d:
matched = p.match(i)
print(p.sub("\g<name> - \g<grade> 4.5", i))
==결과==
김철수 - 학점 4.5
박철수 - 학점 4.5
이철수 - 학점 4.5
반응형
'🛠 기타 > Data & AI' 카테고리의 다른 글
Pandas 데이터 시각화 카테고리 (0) | 2020.07.14 |
---|---|
Pandas 데이터 시각화 한글깨짐 (0) | 2020.07.14 |
파이썬 정규표현식 - 기초활용 (0) | 2020.07.14 |
Pandas 데이터 시각화 (0) | 2020.07.14 |
Pandas 데이터프레임 그룹 나누기 (0) | 2020.07.14 |