<aside>
💬 lv0
, 정규표현식
주어진 문자열에서 숫자와 쉼표만을 포함한 부분을 추출하고, 쉼표를 제거하여 순수한 숫자만을 반환하는 함수를 작성해주세요. 문자열에 숫자가 없는 경우, 빈 문자열을 반환합니다.
예를 들어, 문자열 "가격은 3,500원입니다."에서 함수는 3500
을, "오늘은 2023년 3월 5일"에서는 202335
를 반환해야 합니다.
입력 (문자열) | 출력 (추출된 숫자 문자열) |
---|---|
"가격은 3,500원입니다." | "3500" |
"오늘은 2023년 3월 5일" | "202335" |
"문자만 있는 경우" | "" |
주어진 문자열에서 숫자와 쉼표만을 포함한 부분을 추출하고, 쉼표를 제거하여 순수한 숫자 문자열을 반환합니다. 문자열에 숫자가 없는 경우 빈 문자열을 반환합니다.
</aside>
import re
def solution(data):
numbers_and_commas = re.findall(r"[\\d,]+", data) **#1 패턴 정의 및 findall 함수 사용**
extracted_numbers = "".join(numbers_and_commas).replace(",", "")
**#2 join 및 replace 함수 사용**
return extracted_numbers **#3 결과 반환**
패턴 정의 및 findall 함수 사용
패턴을 정의한 후 findall 함수를 사용해 일치하는 문자열을 찾습니다.
join 및 replace 함수 사용
join
함수를 사용하여 숫자와 쉼표로 이루어진 리스트
를 문자열
로 변환하고, replace
함수를 사용하여 쉼표를 제거합니다.
결과 반환
결과를 반환합니다.
join
기본 형태: "".join()
개념: 문자열을 이어 붙일 때 사용되는 함수로, 리스트나 다른 이터러블 객체의 각 요소를 구분자와 함께 이어붙여 하나의 문자열로 만듭니다.
words = ["hello", "wolrd", "hi"]
# 리스트의 각 요소를 공백으로 이어붙이기
sentence = " ".join(words)
print(sentence) # 출력: "hello wolrd hi"
replace
기본 형태: replace()
개념: 문자열에서 특정 부분을 다른 문자열로 대체할 때 사용하는 함수입니다.
text = "hello wolrd hi"
# 문자열에서 "hello"을 "hi"로 대체
new_text = text.replace("hello", "hi")
print(new_text) # 출력: "hi wolrd hi"
import re
def solution(data):
result = re.sub("\\D", "", data) **#1 패턴 정의, #2 sub 함수 사용**
return result **#3 결과 반환**
패턴 정의
패턴
을 찾습니다.