다음과 같이, "+"를 구분자로 split() 메서드를 이용해서 문자열을 분리하려 했다.
에러 메시지는 다음과 같았다.
구글링을 통해 확인해보니,
?, *, +, (, ), [, ], {, } 와 같은 일부 특수 문자를 replace(), replaceAll(), split() 메서드의 구분자나 기준으로 사용할 때 발생하는 에러라고 한다.
해결방안은
위 특수문자 앞에 역슬래쉬 2개(\\)를 같이 넣어주면 가볍게 해결할 수 있다.
// example
String str = "123+456";
String[] strArr = str.split("\\+");
// 역슬래쉬 = 원화 표시
// strArr = ["123", "456"]
++ 위 특수문자 양 옆에 대괄호([])로 감싸줘도 가능하다.
// example
String str = "123+456";
String[] strArr = str.split("[+]");
// strArr = ["123", "456"]
'Develop > Trouble Shooting' 카테고리의 다른 글
Datagrip Data Source 연결 시, invalid fetch size 문제 해결 (0) | 2024.06.16 |
---|---|
Spring Boot Configuration Annotation Processor not configured (0) | 2023.01.27 |
BeanCreationException 에러 (0) | 2023.01.10 |
GitHub Actions .yml 파일 추가 후, 빌드 진행 시 발생한 에러 (0) | 2022.12.08 |
클라이언트 배포 시, AWS S3 호스팅 과정 중 에러 (0) | 2022.12.08 |