계기
프로그래머스 우수 코드를 보던중 다트게임에서 정규표현식으로 표현한 코드가 있어서 리뷰중 궁금증 발생
import re
def solution(dartResult):
bonus = {'S' : 1, 'D' : 2, 'T' : 3}
option = {'' : 1, '*' : 2, '#' : -1}
p = re.compile('(\d+)([SDT])([*#]?)')
dart = p.findall(dartResult)
for i in range(len(dart)):
if dart[i][2] == '*' and i > 0:
dart[i-1] *= 2
dart[i] = int(dart[i][0]) ** bonus[dart[i][1]] * option[dart[i][2]]
answer = sum(dart)
return answer
-> 정규식을 이용하면 많은 양의 텍스트 파일중에서 원하는 데이터를 손쉽게 뽑아낼수 있고, 데이터가 형식에 맞는지 체크 가능
참고문헌
1. 정규식 내용정리 참조(shaun.log) https://velog.io/@wnsqud70/%EC%A0%95%EA%B7%9C%EC%8B%9D
2. 코드
https://school.programmers.co.kr/learn/courses/30/lessons/17682/solution_groups?language=python3
3. 정규식 사용법
https://whatisthenext.tistory.com/116
4. 베지터 짤
https://www.youtube.com/watch?v=nwhmV-KO1pw