지난번과 비슷한 일이 벌어졌다.
이번에는 날짜형식으로 된 8자리 데이터를 보내와야 하는데 싹다 무시하고 '0000-00-00' 형식으로 데이터가 날아왔다.
지난번에 작성한 특정 문자열을 제거하는 것으로는 해결이 되지 않는 문제다.
사실 지난번 문제보다 더 간단하다. 숫자만 빼고 모든 문자를 없애버리면 되기 때문이다.
따라서 문자열 메서드 중 replaceAll 을 사용하면 된다.
데이터가 '0000-00-00' 식으로 날아 왔기 때문에
단순히
str.replaceAll("-","");
str.replaceAll("-","");
식으로 처리해 줘도 되겠지만
또 어떤 형식으로 날아 올지 알 수 없기 때문에
숫자 이외의 문자는 모두 제거 하기로 한다.
따라서 이번에도 정규식을 사용하기로 한다.
str.replaceAll("[^0-9]","");
str.replaceAll("[^0-9]", "");
0~9 이외의 문자는 모두 제거한다.
"-" 만 제거 하는 것보다 훨씬 범용성이 좋아 졌다.
반응형
'개발 > JAVA, Spring' 카테고리의 다른 글
[JAVA] enum 사용 (0) | 2023.11.10 |
---|---|
[JAVA] Util 클래스에서 세션 사용하기 (0) | 2021.08.02 |
[JAVA] 문자열에 특정 문자가 있는지 확인(matches 이용하기) (0) | 2021.06.09 |
[JAVA] 한글이 포함된 문자열 자르기 (0) | 2021.05.13 |
Spring Security 적용 후 이유없이 Access Denied 될때 (0) | 2021.01.30 |