현재

9. 숫자만 추출(Character.isDigit(char)) 본문

알고리즘/기타알고리즘문제

9. 숫자만 추출(Character.isDigit(char))

AAAge 2024. 4. 1. 22:24
 

입력

첫 줄에 숫자가 섞인 문자열이 주어집니다. 문자열의 길이는 100을 넘지 않습니다.

출력

첫 줄에 자연수를 출력합니다.

예시 입력 1 

g0en2T0s8eSoft

예시 출력 1

208

 

<힌트>

더보기

- ASCII 사용 대문자( A~Z, 65 ~ 90) / 소문자(a~z, 97 ~ 122) / 숫자 (0~9, 48 ~ 57)

 

<직접풀이>

더보기
import java.io.*;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Scanner;

public class Main {
    public static void main(String[] args) throws IOException{
        Scanner sc = new Scanner(System.in);

        String input = sc.next();
        char inputList[] = input.toCharArray();

        int answer = 0;

        for(char e : inputList){
            if(!((e >= 65 && e <= 90) || (e >= 97 && e <= 122 )))
            answer = answer*10 + (e-'0');
        }
        System.out.println(answer);
       
        // g0en2T0s8eSoft
    }
}

<정답코드>

더보기
import java.io.*;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Scanner;

public class Main {
    public static void main(String[] args) throws IOException{
        Scanner sc = new Scanner(System.in);

        String input = sc.next();
        char inputList[] = input.toCharArray();

        String answer = "";

        for(char e : inputList){
            if(Character.isDigit(e)){
            answer += e;
            }
        }
        System.out.println(Integer.parseInt(answer));
        // g0en2T0s8eSoft
    }
}