프로그래머스_LV.0_숨어있는 숫자의 덧셈

Dreamer ·2022년 12월 15일
0

코딩테스트 준비

목록 보기
58/93

1. quiz

  • 문자열 my_string이 매개변수로 주어집니다. my_string은 소문자, 대문자, 자연수로만 구성되어있습니다. my_string안의 자연수들의 합을 return하도록 solution 함수를 완성해주세요.

2. answer

import re
def solution(my_string):
    numbers = re.findall(r'\d+', my_string)
    return sum(i for i in list(map(int,numbers)))

3. 다른 사람의 풀이

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())
import re

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

4.

4.1. isdigit(), isalpha(), isalnum()

  • isdigit() : 숫자로만 구성되어 있으면 True, 문자열에서 정수 추출
  • isalpha() : 문자로 구성되어 있으면 True, 문자열에서 글자 추출
  • isalnum() : 글자 또는 숫자로 구성되어 있으면 True

4.2. re.findall()

  • r'\d+' : 1회 이상 연속된 숫자들에 대한 패턴 추출
  • r'\d' : 숫자 1개씩 추출
import re
numbers = re.findall(r'\d+', string)
number = re.findall(r'd', string) 
  • [0-9]+ : 숫자들 추출 정규식
  • [a-zA-Z] : 문자들 추출 정규식
profile
To be a changer who can overturn world

0개의 댓글