728x90
replaceAll (" ", "" )이나, trim() 으로 간단 하게 공백을 제거하려 했지만 제거가 안되는 경우가 있다.
이유를 찾아보니.. 상기 코드로 삭제되지 않는 이유는..
"CJK 문자셋에서 'IDEOGRAPHIC SPACE'라고 불리는 유니코드는 \u3000이며, HTML에서는  으로 표현, 폰트가 이를 지원하지 않을 경우, 실제로는 보이지 않는 코드로만 존재하는 공백"
이럴 경우 다음과 같은 정규식을 통해 제거가 가능.
// 모든 공백 제거
String str =originalString.replaceAll("\\p{Z}", "");
// 앞뒤 공백만 제거(trim)
String str =originalString.replaceAll("(^\\p{Z}+|\\p{Z}+$)", "");
728x90
'프로그래밍 > Java' 카테고리의 다른 글
API를 Restful 하게 작성하기 위해 고려해 볼 만한 5가지 디자인 (0) | 2024.04.17 |
---|---|
자바 스윙(swing) 프로젝트 - 맛집 랜덤 추천 (2) | 2021.12.30 |
자바 날짜, 시간 구하기 (LocalDate, LocalTime, LocalDateTime 자주쓰는 메소드 정리) (0) | 2020.07.01 |
자바날짜, 시간 구하기 (LocalDate, LocalTime, LocalDateTime 사용법) (0) | 2020.07.01 |
jstl 에서 비교 연산 eq, ne, empty 사용법 (0) | 2020.06.26 |