using java regular expression , and I found the following example
Print\-Services
I am wondering why \-
, does it escape the -?
using java regular expression , and I found the following example
Print\-Services
I am wondering why \-
, does it escape the -?
You don't need to escape a '-' in a regex. It is only a meta-character inside a [...]
character class specification.
If that was a Java String literal, then the first ''
would escape the 2nd ''
and that would give -
in the regex ... which is nonsense1.
If that was NOT a String literal, then the first ''
is escaping the 2nd ''
in the regex. That is NOT nonsense. It means match a backslash character.
1 - It is, however, legal nonsense. The javadoc says: "A backslash may be used prior to a non-alphabetic character regardless of whether that character is part of an unescaped construct." The redundant backslash would be ignored.