Java split on ^ (caret?) not working, is this a special character?

The ^ is a special character in Java regex – it means “match the beginning” of an input.

You will need to escape it with "\\^". The double slash is needed to escape the \, otherwise Java’s compiler will think you’re attempting to use a special \^ sequence in a string, similar to \n for newlines.

\^ is not a special escape sequence though, so you will get compiler errors.

In short, use "\\^".

Leave a Comment