What is the proper way of inserting a pipe into a Java Pattern expression?
I actually want to use a pipe as a delimiter and not the or operator.
I.E:
Escape it with \\:
"hello|world".split("\\|");
"hello|world".split("\\\\|"); --> {"hello", "world"}
First set of "\\"
only yields the \ as the delimiter. Therefore 2 sets are needed to escape the pipe.
in Java 1.5+:
"hello|world".split(Pattern.quote("|"));
I have this problem a lot (encoding a regex into a Java String
), so I have bookmarked the regex tool at fileformat.info; it has a nifty function where it will show you the Java String
representation of a regex after you test it.