문자와 숫자가 섞여있는 문자열이 주어지면 그 중 숫자만 추출하여 그 순서대로 자연수를 만듭니다.
만약 “tge0a1h205er”에서 숫자만 추출하면 0, 1, 2, 0, 5이고 이것을 자연수를 만들면 1205이 됩니다.
추출하여 만들어지는 자연수는 100,000,000을 넘지 않습니다.
첫 줄에 숫자가 썩인 문자열이 주어집니다. 문자열의 길이는 100을 넘지 않습니다.
첫 줄에 자연수를 출력합니다.
g0en2T0s8eSoft
208
import java.util.*;
public class Main {
public int solution(String str){
str=str.replaceAll("[^0-9]","");
return Integer.parseInt(str);
}
public static void main(String[] args){
Main T = new Main();
Scanner sc= new Scanner(System.in);
String str = sc.nextLine();
System.out.println(T.solution(str));
}
}
숫자를 제외한 문자열 요소들을 모두 삭제하고 int화시켜서 반환한다.
import java.util.*;
class Main {
public int solution(String s){
//int answer=0;
String answer="";
for(char x : s.toCharArray()){
//if(x>=48 && x<=57) answer=answer*10+(x-48);
/*if(Character.isDigit(x)){
answer=answer*10+ Character.getNumericValue(x);
}*/
if(Character.isDigit(x)) answer+=x;
}
return Integer.parseInt(answer);
}
public static void main(String[] args){
Main T = new Main();
Scanner kb = new Scanner(System.in);
String str=kb.next();
System.out.print(T.solution(str));
}
}
숫자만 골라서 새로운 문자열에 순서대로 추가한듯