> 개발-IT-인터넷/> JAVA

[해커랭크(HackerRank) JAVA 풀이] - Java Regex

jini:) 2023. 9. 18. 14:03
728x90
반응형
해커랭크 - https://www.hackerrank.com/
Prepare > Java > Strings > Java Regex
 

HackerRank

HackerRank is the market-leading technical assessment and remote interview solution for hiring developers. Learn how to hire technical talent from anywhere!

www.hackerrank.com

 

문자열 패턴을 포함할 MyRegex라는 클래스를 작성하세요. IP 주소의 유효성을 검사하는 데 사용할 수 있도록 정규식을 작성하고 패턴에 할당해야 합니다. 다음과 같은 IP 주소 정의를 사용합니다.

IP 주소는 "A.B.C.D" 형식의 문자열이며, 여기서 A, B, C 및 D의 값 범위는 0에서 255 사이일 수 있습니다. 선행 0이 허용됩니다. A, B, C 또는 D의 길이는 3보다 클 수 없습니다.

 

일부 유효한 IP 주소:

000.12.12.034
121.234.12.12
23.45.12.56

 

일부 잘못된 IP 주소:

000.12.234.23.23
666.666.23.23
.213.123.23.32
23.45.22.32.
I.Am.not.an.ip

 

 

이 문제에서는 ASCII 문자 조합을 포함하는 문자열이 제공됩니다. 유효한 IP를 찾으려면 정규식을 작성해야 합니다.

String 패턴을 포함하는 MyRegex 클래스를 작성하기만 하면 됩니다. 문자열에는 올바른 정규식이 포함되어야 합니다.

 

Sample Input

000.12.12.034
121.234.12.12
23.45.12.56
00.12.123.123123.123
122.23
Hello.IP

 

Sample Output

true
true
true
false
false
false

 

반응형

 

Code 

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

class Solution{

    public static void main(String[] args){
        Scanner in = new Scanner(System.in);
        while(in.hasNext()){
            String IP = in.next();
            System.out.println(IP.matches(new MyRegex().pattern));
        }

    }
}

//Write your code here
class MyRegex {
    String pattern = "\\b([01]?\\d{1,2}|2[0-4]\\d|25[0-5])\\."
        + "([01]?\\d{1,2}|2[0-4]\\d|25[0-5])\\."
        + "([01]?\\d{1,2}|2[0-4]\\d|25[0-5])\\."
        + "([01]?\\d{1,2}|2[0-4]\\d|25[0-5])\\b";
}

 

 

참고

자바 정규식 (Java RegExp) 정규표현식 사용법

 

자바 정규식 (Java RegExp) 정규표현식 사용법

[해커랭크(HackerRank) JAVA 풀이] - Java Regex 이전 글에서 해커랭크 문제를 풀다가, 자바 정규식에 대해 좀 더 알아볼 필요성을 느꼈다. 자바 정규표현식 사용법에 대해 자세히 알아보자. 정규표현식

ji-ni.tistory.com

 

 

 

개인 공부를 위한 포스팅입니다.
모든 번역, 코드는 완벽하지 않을 수 있습니다.

 

 

 

728x90
반응형