/favicon.ico

itcode.dev

[프로그래머스 / JAVA] Level 1 문자열 다루기 기본 (12918)

2021-12-16 (목) 21:38:44
https://user-images.githubusercontent.com/50317129/145976356-6b5d1430-31c0-4c34-829e-6be8f747ab19.png
프로그래머스

시리즈 모아보기

프로그래머스

43 / 78
랭크사용 언어
Level 1

JAVA

🔗

문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성하세요. 예를 들어 s가 "a234"이면 False를 리턴하고 "1234"라면 True를 리턴하면 됩니다.

  • s는 길이 1 이상, 길이 8 이하인 문자열입니다.
sreturn
"a234"false
"1234"true

아래의 조건을 모두 만족하는 문자열만 true를 반환하며, 나머지는 모두 false로 반환한다.

  • 모든 문자가 숫자로 이루어짐
  • 글자가 4글자 혹은 6글자 (4 ~ 6이 아님)

정규식을 이용하면 깔끔하게 풀 수 있다. 정규식을 구성하여 해당 식에 부합하면 true, 아니라면 false를 반환하자.

  • 정규식: ^([0-9]{4}|[0-9]{6})$
  • [0-9] - 숫자
  • {4} - 4글자
  • | - OR
  • ^ - 문자의 앞
  • $ - 문자의 끝

문자의 전체가 4자리 숫자 혹은 6자리 숫자인 정규식이다.

JAVA
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
import java.util.regex.Pattern;

/**
 * 문자열 다루기 기본 클래스
 *
 * @author RWB
 * @since 2021.12.13 Mon 15:38:26
 */
class Solution
{
    /**
     * 해답 반환 메서드
     *
     * @param s: [String] 문자열
     *
     * @return [boolean] 해답
     */
    public boolean solution(String s)
    {
        return Pattern.matches("^([0-9]{4}|[0-9]{6})$", s);
    }
}

Tags

# 프로그래머스
# 알고리즘
# JAVA(자바)
# Level 1