반응형

데이터를 검증하는 과정에서 문자열에 존재하는 데이터가 숫자만 있어야 하는 경우가 필요했는데, 이후 substring등으로 특정 형태로 변경해야해서 특히 검증을 꼼꼼하게 진행했습니다.

 

아래와 같이 정규식을 활용하면 쉽게 확인이 가능합니다.

public class StringUtils {

	public static void main(String[] args) {
		final String REGEX = "[0-9]+";
		String test = "20201119173455"; //년월일시분초
		
		if(test.matches(REGEX)) {
			System.out.println("숫자만 있습니다.");
		}else {
			System.out.println("숫자외에 값이 존재합니다.");
		}
	}
}

 

 

배열을 통해 여러가지 데이터를 검증해보았습니다.

public class StringUtils {

	public static void main(String[] args) {
		final String REGEX = "[0-9]+";
		String[] testArr = {"20201119173455", "20201119 173455", "2020111917:34:55"};
		for(int i=0; i<testArr.length; i++) {
			if(testArr[i].matches(REGEX)) {
				System.out.println("숫자만 있습니다.");
			}else {
				System.out.println("숫자외에 값이 존재합니다.");
			}
		}
	}
}

공백만 존재하여도 else를 타면서 정상적으로 체크하는 모습을 볼 수 있습니다.

반응형