숫자 검증 알고리즘.
1. 예외처리 이다.
숫자가 아니면 NumberFormatException을 이용하는 방법을 알아두자
2 3 4 5 6 7 8 9 10 11 12 13 14 | class Solution { public boolean solution(String s) { if(s.length() == 4 || s.length() == 6){ try{ int x = Integer.parseInt(s); return true; } catch(NumberFormatException e){ return false; } } else return false; } } |
2. import 방식과 정규식 표현이다.
import java.util.*; class Solution { public boolean solution(String s) { if (s.length() == 4 || s.length() == 6) return s.matches("(^[0-9]*$)"); return false; } }
정규식 표현으로 (^[0-9]+$) 을 알아두자.
import java.util.*;
정규식을 해석해 보자면 ..
1 2 3 4 5 6 | [ 정규식 해석 ] ^ 으로 우선 패턴의 시작을 알립니다. [0-9] 괄호사이에 두 숫자를 넣어 범위를 지정해줄 수 있습니다. * 를 넣으면 글자 수를 상관하지 않고 검사합니다. $ 으로 패턴의 종료를 알립니다. 출처: https://highcode.tistory.com/6 [HighCode] | cs |
1 2 3 4 5 6 7 8 9 10 11 12 13 | [자주 쓰이는 패턴] 1) 숫자만 : ^[0-9]*$ 2) 영문자만 : ^[a-zA-Z]*$ 3) 한글만 : ^[가-힣]*$ 4) 영어 & 숫자만 : ^[a-zA-Z0-9]*$ 5) E-Mail : ^[a-zA-Z0-9]+@[a-zA-Z0-9]+$ 6) 휴대폰 : ^01(?:0|1|[6-9]) - (?:\d{3}|\d{4}) - \d{4}$ 7) 일반전화 : ^\d{2,3} - \d{3,4} - \d{4}$ 8) 주민등록번호 : \d{6} \- [1-4]\d{6} 9) IP 주소 : ([0-9]{1,3}) \. ([0-9]{1,3}) \. ([0-9]{1,3}) \. ([0-9]{1,3}) 출처: https://highcode.tistory.com/6 [HighCode] | cs |
꼭 기억하기 ~
출처 : https://highcode.tistory.com/6
출처 : https://programmers.co.kr/learn/courses/30/lessons/12918/solution_groups?language=java
반응형
'일상 기술노트 > 코딩' 카테고리의 다른 글
템플릿 엔진이란?? (0) | 2020.08.17 |
---|---|
최대 수 최소 수를 구하는 메서드 Math.min(), Math.max() (0) | 2019.01.26 |
[톰캣] 웹 서버 외부 접속 허용 방법 (0) | 2018.12.28 |