如何在字符串数组java中定义特殊字符
我需要定义一个包含所有特殊字符的数组。
+ - && || ! ( ) { } [ ] ^ " ~ * ? : \
我正在使用这个
List specialCharactersInSolr = Arrays.asList(new String[] { "+", "-", "&&", "||", "!", "(", ")", "{", "}", "[", "]", "^", "~", "*", "?", ":", });
它接受所有的字符,除了“和\
请帮助如何定义这两个。
\
和"
是String类中的特殊字符
-
"
是String的开头或结尾 -
\
用于创建一些字符,如新行\n
\r
\t
tab\t
或转义特殊字符,如你的情况\
和"
所以为了使它们成为文字,你必须用"\\"
和"\""
来逃避它们。
其他想法是使用Character[]
而不是String[]
所以你不必逃避"
你的角色可以写成'"'
或'\\'
(因为'
需要转义 – 它应该写成'\''
– \
在这里也很特别,还需要转义才能生成它的文字)。
用这个
List specialCharactersInSolr = Arrays.asList(new String[]{ "+", "-", "&&", "||", "!", "(", ")", "{", "}", "[", "]", "^", "~", "*", "?", ":","\"","\\"});
这里"\""
和"\\"
是为了"
和\