목차

숫자 문자열과 영단어

ps
링크programmers.co.kr/…
출처프로그래머스
문제 번호81301
문제명숫자 문자열과 영단어
레벨Level 1
분류

기초

시간복잡도O(n)
인풋사이즈n<=50
사용한 언어Python
해결날짜2021/07/10
출처

ps:problems:programmers:2021_카카오_채용연계형_인턴십

풀이

코드

"""Solution code for "Programmers 81301. 숫자 문자열과 영단어".

- Problem link: https://programmers.co.kr/learn/courses/30/lessons/81031
- Solution link: http://www.teferi.net/ps/problems/programmers/81031
"""

import re


def solution(s):
    words = ['zero', 'one', 'two', 'three', 'four',
             'five', 'six', 'seven', 'eight', 'nine']
    num_by_word = {word: str(i) for i, word in enumerate(words)}
    rep = re.sub(f"({'|'.join(words)})", lambda m: num_by_word[m.group(0)], s)
    return int(rep)