如何在字符串数组java中定义特殊字符

时间:2013-07-12 10:24:07

标签: java arrays arraylist

我需要定义一个包含所有特殊字符的数组..

+ - && || ! ( ) { } [ ] ^ " ~ * ? : \

我正在使用此

List<String> specialCharactersInSolr = Arrays.asList(new String[] {
                "+", "-", "&&", "||", "!", "(", ")", "{", "}", "[", "]", "^",
                "~", "*", "?", ":", });

接受除“和\

之外的所有字符

请帮助如何定义这两个。

2 个答案:

答案 0 :(得分:10)

\"是String类

中的特殊字符
  • "是String
  • 的开头或结尾
  • \用于创建新行\n \r标签\t等字符,或者转义特殊字符\和{{} 1}}

因此,要使它们成为文字,您必须使用""\\"

来逃避它们

其他想法是使用"\""代替Character[],因此您无需转义String[],您的字符可以写为"'"'(因为'\\'需要转义 - 它应该写成' - '\''在这里也很特殊,并且还需要转义才能生成它的字面值。

答案 1 :(得分:4)

使用此

List<String> specialCharactersInSolr = Arrays.asList(new String[]{
            "+", "-", "&&", "||", "!", "(", ")", "{", "}", "[", "]", "^",
            "~", "*", "?", ":","\"","\\"});

此处"\"""\\"适用于"\