What do these special characters mean in Java?

前端 未结 3 1037
难免孤独
难免孤独 2020-12-10 04:32

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) {
    i         


        
相关标签:
3条回答
  • 2020-12-10 04:53

    Java regex engine blocks special interpretation of all meta-characters between \Q and \E. For example, [name] matches a single character ('n', 'a', 'm', or 'e'), while \Q[name]\E matches six characters - '[', 'n', 'a', 'm', 'e', and ']'. See the Special Characters section of the regex tutorial for more detail.

    The method makes a regular expression from a string that is presumably provided externally (e.g. entered by a user). Since the string may contain meta-characters, the method encloses the entire string in \Q and \E. If the string already contains a \E, the method inserts the end of the quote, a match of \E, and a beginning of a new quote for each \E that it finds..

    0 讨论(0)
  • 2020-12-10 05:09

    Well, \Q and \E have a special meaning in Java regular expressions...

    Most of this method is just working on the tricky edge case of quoting the quote markers \Q and \E themselves.

    0 讨论(0)
  • 2020-12-10 05:20

    \Q and \E is exactly what Pattern.quote() does, that is to Returns a literal pattern String for the specified String.

    For more details see this link:

    http://docs.oracle.com/javase/1.5.0/docs/api/java/util/regex/Pattern.html

    0 讨论(0)
提交回复
热议问题