I was looking at some of the jdk code. I found these characters. Could someone explain to me what do these mean.
public static String quote(String s) {
int slashEIndex = s.indexOf("\E"); // What does this mean. Is this a special char in java. if so what does this do.
if (slashEIndex == -1)
return "\Q" + s + "\E";
StringBuilder sb = new StringBuilder(s.length() * 2);
sb.append("\Q");
slashEIndex = 0;
int current = 0;
while ((slashEIndex = s.indexOf("\E", current)) != -1) {
sb.append(s.substring(current, slashEIndex));
current = slashEIndex + 2;
sb.append("\E\\E\Q");
}
sb.append(s.substring(current, s.length()));
sb.append("\E");
return sb.toString();
}
From the above code example I was able to figure out what's happening as in the method finds the occurrences of and converts them to E and Q. Could someone explain why that's the case.
For more context on this method, I was looking into the Pattern.quote() method from jdk 1.6
See Question&Answers more detail:os