java&spring
replaceAll과 split에서의 주의점
sungjine
2016. 8. 25. 23:47
반응형
- replaceAll에 정규표현식을 사용해서 이미지의 경로를 String에 넣으려고 할 때 separator가 사라지는 이슈가 발생했다.
실행 코드 : separator.replaceAll(separator, "image" + separator + "default.jpg");
위와 같이 실행하면 아래와 같이 나온다.
결과 : imagedefault.jpg
검색결과 Windows의 Separator는 역슬레시이고 정규표현식에서 역슬레시 두 개를 역슬레시 하나로 인식하고 자바 또한 동일하게 인식하기 때문에 일어나는 이슈였다.
그래서 하나의 String값으로 가지고 있던 이미지의 경로를 split을 통해 경로와 이름으로 분리하여 separator를 두번 사용 하려고 했다.
실행 코드 : separator.split(separator);
위와 같이 실행하면 아래와 같은 에러메세지가 출력된다.
결과 : Unexpected internal error near index 1 \ ^
검색결과 split도 마찬가지로 정규표현식을 사용할 수 있게끔 만들어져있어 saparator를 두번 붙여서 사용해야 했다.
반응형