💬 문제 설명
문자열 my_string이 매개변수로 주어집니다. my_string은 소문자, 대문자, 자연수로만 구성되어있습니다. my_string안의 자연수들의 합을 return하도록 solution 함수를 완성해주세요.
🚫 제한 사항
- 1 ≤ my_string의 길이 ≤ 1,000
- 1 ≤ my_string 안의 자연수 ≤ 1000
- 연속된 수는 하나의 숫자로 간주합니다.
- 000123과 같이 0이 선행하는 경우는 없습니다.
- 문자열에 자연수가 없는 경우 0을 return 해주세요.
📢 입출력 예
👨🏫 입출력 예 설명
📃 제출 코드
import java.util.Arrays;
class Solution {
public int solution(String my_string) {
int answer = 0;
String[] arr = (my_string.replaceAll("[a-zA-Z]", " ")).split(" ");
for (String str : arr) {
if (!str.equals("")) {
answer += Integer.parseInt(str);
}
}
return answer;
}
}
✏ 해결방법 & 배운점
replaceAll() 메서드를 활용하여 my_string 문자열 내의 모든 알파벳을 공백으로 치환하고, 이를 공백을 기준으로 잘라 문자열 배열을 생성했습니다. 그 후 배열을 순회하여 각 원소가 공백이 아닌 경우에만 정수로 변환하여 합산하는 방식으로 문제를 해결했습니다.
'PS > 프로그래머스 입문 100제' 카테고리의 다른 글
[프로그래머스] LV.0 K의 개수 - 자바 [66/100] (0) | 2024.06.26 |
---|---|
[프로그래머스] LV.0 A로 B 만들기 - 자바 [65/100] (0) | 2024.06.26 |
[프로그래머스] LV.0 팩토리얼 - 자바 [63/100] (0) | 2024.06.26 |
[프로그래머스] LV.0 모스부호 (1) - 자바 [62/100] (0) | 2024.06.26 |
[프로그래머스] LV.0 2차원으로 만들기 - 자바 [61/100] (0) | 2024.06.26 |