본문 바로가기

정규식2

[Javascript] 8자리 날짜형식 문자열에 포멧 적용하기 서버나 다른 화면으로 부터 '20231121' 과 같은 8자리 문자열을 리턴 받았다. 이 데이터를 화면에 그대로 보여주기 보다는 '년.월.일' 혹은 '년/월/일' 하는 형식으로 포멧을 적용해 보여주는 것이 사용자 경험에 중요한 역활을 할 것이다. 이런 데이터가 수시로 넘어 올 것이기 때문에 아래와 같이 함수를 만들었다. function formatByYmd(ymd){ return ymd.replace(/(\d{4})(\d{2})(\d{2})/, '$1.$2.$'); } 이제 서버에서 '20231121' 과 같은 데이터가 넘어오면 이 함수를 통해 '2023.11.21'로 바뀌게 될 것이다. 만약 구분자를 '/' 나 '-' 같은 형식으로 변경하고 싶다면 replace의 두 번째 인자인 '$1.$2.$3'을 .. 2023. 11. 21.
[JAVA] 문자열에서 숫자만 남기고 제거하기 (replaceAll) 지난번과 비슷한 일이 벌어졌다. 이번에는 날짜형식으로 된 8자리 데이터를 보내와야 하는데 싹다 무시하고 '0000-00-00' 형식으로 데이터가 날아왔다. 지난번에 작성한 특정 문자열을 제거하는 것으로는 해결이 되지 않는 문제다. 사실 지난번 문제보다 더 간단하다. 숫자만 빼고 모든 문자를 없애버리면 되기 때문이다. 따라서 문자열 메서드 중 replaceAll 을 사용하면 된다. 데이터가 '0000-00-00' 식으로 날아 왔기 때문에 단순히 str.replaceAll("-",""); str.replaceAll("-",""); 식으로 처리해 줘도 되겠지만 또 어떤 형식으로 날아 올지 알 수 없기 때문에 숫자 이외의 문자는 모두 제거 하기로 한다. 따라서 이번에도 정규식을 사용하기로 한다. str.repl.. 2021. 6. 16.