[Java] 정규표현식, 백준 1013

김지영·2023년 6월 9일
0

Algorithm

목록 보기
5/6

정규식

텍스트 데이터 중에서 원하는 조건(패턴, pattern)과 일치하는 문자열을 찾아내기 위해 사용하는 것으로 미리 정의된 기호와 문자를 이용해서 작성한 문자열

  • 많은 양의 텍스트 파일 중에서 원하는 데이터를 손쉽게 뽑아낼 수 있고 입력된 데이터가 형식에 맞는지 체크할 수 있다.

백준 1013. Contact

문제 링크
문제 화면1
문제 화면2

import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

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

        int t = scanner.nextInt();
        scanner.nextLine(); // 개행 문자 읽기

        for (int i = 0; i < t; i++) {
            String wave = scanner.nextLine();
            boolean result = checkPattern(wave);
            if (result) {
                System.out.println("YES");
            } else {
                System.out.println("NO");
            }
        }

        scanner.close();
    }

    private static boolean checkPattern(String wave) {
        String pattern = "(100+1+|01)+";
        Pattern regex = Pattern.compile(pattern);
        Matcher matcher = regex.matcher(wave);

        return matcher.matches();
    }
}

0개의 댓글