2

すべての特殊文字の下にある配列を定義する必要があります..

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

私はこれを使用しています

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

" と \ を除くすべての文字を受け入れます

これら2つを定義する方法も教えてください。

4

2 に答える 2

10

\および"String クラスの特殊文字です。

  • "文字列の開始または終了です
  • \\n \r改行タブのようないくつかの文字を作成したり、あなたの場合の\tような特殊文字をエスケープしたりするために使用されます\"

したがって、それらをリテラルにするには、それらをエスケープする必要が"\\"あります"\""


他のアイデアは、Character[]の代わりに使用することでString[]、エスケープする必要がなく、"文字を'"'orとして書くことができます'\\'('エスケープが必要なため - as と書く必要があります'\''-\ここでも特別であり、リテラルを生成するためにエスケープも必要になります)。

于 2013-07-12T10:27:07.243 に答える
4

これを使って

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

ここ"\"""\\"あり"\

于 2013-07-12T10:26:52.497 に答える