Backtracking is the cost
Each give back is another try. A pattern with two nested repetitions can try an exponential number of splits.
Cap the input
A length limit fixes the worst case without changing the pattern. That is the cheapest fix when the pattern is shared.