보통사람

[7kyu] 정규식 PIN 코드 유효성 검사(Regex validate PIN code) 본문

Codewars/Java

[7kyu] 정규식 PIN 코드 유효성 검사(Regex validate PIN code)

pej4303 2019. 8. 3. 00:05
/**
  * <pre>
  *  정규식 PIN 코드 유효성 검사(Regex validate PIN code)
  *  
  *  ATM 기계는 4 또는 6 자리 PIN 코드를 허용하며 PIN 코드는 정확히 4 자리 또는 정확히 6 자리를 포함 할 수 없습니다.
  *  함수에 유효한 PIN 문자열이 전달되면 true를 반환하고 그렇지 않으면 false를 반환합니다.
  *  
  *  ATM machines allow 4 or 6 digit PIN codes 
  *  and PIN codes cannot contain anything but exactly 4 digits or exactly 6 digits.
  *  If the function is passed a valid PIN string, return true, else return false.
  * </pre>
  * @param {String} PIN 코드
  * @return {Boolean} true/false
  * @author pej
  * @date 2019. 03. 31.
  * @example validatePin("1234")  ==> true
  *          validatePin("12345") ==> false
  *          validatePin("a234")  ==> false
  */
 public static boolean validatePin(String pin) {
     boolean result = false;

     if (pin.length() == 4 || pin.length() == 6 ) {
         if (pin.matches("^[0-9]*$")) {
             result = true;
         }
     } else {
         result = false;
     }

     return result;
 }

 

  • 방법2) 다른 사람이 한것

public static boolean validatePin(String pin) {
   return pin.matches("[0-9]{4}|[0-9]{6}");
}