2017-03-08 9 views
-1

すべてを削除する必要があります\ n内容私はPatternReplaceCharFilterFactoryを使用することを決めたと私はAPI呼び出しを使用してAPIを使用してスキーマ「 n」(PatternReplaceCharFilterFactory)に追加する方法は?

<filter class="solr.PatternReplaceCharFilterFactory" pattern="\n" replace="all" replacement=""/> 

のschema.xmlに追加する必要があります。しかし、solrはこのパターンをエンコードします。 私は\ n個を追加しようとした、\ nは、(\ n)がが、同じ結果、それが動作していない。

curl -X "POST" "http://localhost:$PORT/solr/$CORE_NAME/schema" \ 
    -H "Content-Type: application/json" \ 
    -d $'{ 
    "add-field-type": { 
    ........ 
    "indexAnalyzer": { 
     "filters": [ 
     { 
      "class": "solr.PatternReplaceCharFilterFactory", 
      "pattern":"\n", 
      "replacement":"", 
      "replace":"all" 
     },] 
     ........... 
    } 

呼び出すが、Solrのschema.xmlをして

 <filter class="solr.PatternReplaceCharFilterFactory" pattern=" 
" replace="all" replacement=""/> 

を作成

+0

<fieldType name="myNewTextField" class="solr.TextField"> <analyzer type="index"> <tokenizer class="solr.PathHierarchyTokenizerFactory" delimiter="/"/> <filter class="solr.PatternReplaceCharFilterFactory" pattern="\n" replace="all" replacement=""/> </analyzer> <analyzer type="query"> <tokenizer class="solr.KeywordTokenizerFactory"/> </analyzer> </fieldType> 

だから、フルカール・コマンドは次のようになります例えば、Solrをサンプルとして与えられたコレクション上では、すぐに使用できません。 – freedev

答えて

1

エスケープされたバックスラッシュは私のために働いた:"pattern": "\\n"

私が管理し、スキーマファイルにすることをチェックしました:それは、カールラインは、行動の面で明らかであるが

curl -X POST -H 'Content-type: application/json' "http://localhost:8983/solr/gettingstarted/schema" -d '{ 
    "add-field-type": { 
    "name": "myNewTextField", 
    "class": "solr.TextField", 
    "indexAnalyzer": { 
     "tokenizer": { 
     "class": "solr.PathHierarchyTokenizerFactory", 
     "delimiter": "/" 
     }, 
     "filters": [ 
     { 
      "class": "solr.PatternReplaceCharFilterFactory", 
      "pattern": "\\n", 
      "replacement": "", 
      "replace": "all" 
     } 
     ] 
    }, 
    "queryAnalyzer": { 
     "tokenizer": { 
     "class": "solr.KeywordTokenizerFactory" 
     } 
    } 
    } 
}' 
+0

あなたはどのように売り呼を送ったのですか? UNIXのカールを使用して? – DenisOgr

+0

はい、更新の回答自体を更新しましょう。 –

+0

ありがとう、私は、 '-d $ '{" "add-field-type" – DenisOgr

関連する問題