class Solution {
public int solution(String my_string) {
int answer = 0;
String number = "";
boolean check = false;
for(int i=0; i<my_string.length(); i++) {
char ch = my_string.charAt(i);
while(!Character.isLetter(ch)) {
number += ch;
check = true;
if(i+1 < my_string.length())ch = my_string.charAt(++i);
else break;
}
if(check) answer += Integer.parseInt(number);
check = false;
number = "";
}
return answer;
}
}
class Solution {
public int solution(String my_string) {
int answer = 0;
String[] str = my_string.replaceAll("[a-zA-Z]", " ").split(" ");
for(String s : str){
if(!s.equals("")) answer += Integer.valueOf(s);
}
return answer;
}
}
replaceAll()과 split()를 이렇게 응용해서 쓸 수 있구나.
그리고 숫자가없으면 s에 ""가 들어가기때문에, answer에 숫자를 더하기전에 if(!s.equals(""))
로 조건문을 걸어야한다. 그렇지않으면 NumberFormatException이 난다.