Это мое Regex
((?:(?:'[^']*')|[^;])*)[;]
Он токенизирует строку в точках с запятой. Например,
Hello world; I am having a problem; using regex;
Результат - три строки
Hello world
I am having a problem
using regex
Но когда я использую большую строку ввода, я получаю эту ошибку
Exception in thread "main" java.lang.StackOverflowError
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
at java.util.regex.Pattern$Loop.match(Pattern.java:4295)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
at java.util.regex.Pattern$Loop.match(Pattern.java:4295)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
Как это вызвано и как я могу его решить?