본문 바로가기
에러 모음집

[JAVA] java.util.regex.PatternSyntaxException: Illegal repetition

by snow_white 2022. 7. 7.

❌문자열에서 특정한 특수문자 제거하는 과정에서 발생한 오류입니다.

String arr[] = s.split("{"); // Error
/*
Exception in thread "main" java.util.regex.PatternSyntaxException: Illegal repetition
{
	at java.util.regex.Pattern.error(Pattern.java:1957)
	at java.util.regex.Pattern.closure(Pattern.java:3159)
	at java.util.regex.Pattern.sequence(Pattern.java:2136)
	at java.util.regex.Pattern.expr(Pattern.java:1998)
	at java.util.regex.Pattern.compile(Pattern.java:1698)
	at java.util.regex.Pattern.<init>(Pattern.java:1351)
	at java.util.regex.Pattern.compile(Pattern.java:1028)
	at java.lang.String.split(String.java:2380)
	at java.lang.String.split(String.java:2422)
 */

✅ 해결 방법

특수 문자 앞에  \\ (역슬래시)를 붙여주어 이스케이프 처리가 되어 문자열을 나눌 수 있습니다.

String arr[] = s.split("\\{"); // OK

댓글