[프로그래머스] 숨어있는 숫자의 덧셈(2)

해피데빙·2023년 1월 4일
0

코딩테스트

목록 보기
36/52
post-custom-banner

https://school.programmers.co.kr/learn/courses/30/lessons/120864

re

파이썬 re

re.split (쪼개기)
re.split(pattern, string)

문자열을 패턴 기준으로 쪼갠다.

pattern = "[0-9]"

a = re.split(pattern, "오늘은 29일 이에요")

내 풀이

import re
def solution(my_string):
    return sum(map(int,list(filter(lambda x: x!='', re.split('[^0-9]', my_string)))))

풀이1

def solution(my_string):
    s = ''.join(i if i.isdigit() else ' ' for i in my_string)
    return sum(int(i) for i in s.split())

isdigit이면 join 아니면 ' '(나중에 split하게)
합친 string을 split하고 다시 int로 만들어서 sum

풀이2

import re
def solution(my_string):
    return sum([int(i) for i in re.findall(r'[0-9]+', my_string)])

re.findall로 [0-9]+에 해당하는 값들을 다 리스트에 넣어서 sum

profile
노션 : https://garrulous-gander-3f2.notion.site/c488d337791c4c4cb6d93cb9fcc26f17
post-custom-banner

0개의 댓글