0

SOLR スキーマに多値フィールドがあります。スペースを削除できる既存のトークナイザー/フィルターがあるかどうか疑問に思っています。たとえば、「solr、apache solr、逆インデックス」が与えられた場合、「solr、apachesolr、逆インデックス」として使用したいと思います。

4

1 に答える 1

1

そのフィールドのインデックス時に、アナライザー チェーンの最初のエントリとしてPatternReplaceCharFilterFactoryを使用できます。そのため、次のように schema.xml で新しい fieldType を定義します。

<fieldtype name="text_no_ws" class="solr.TextField">
  <analyzer>
    <charFilter class="solr.PatternReplaceCharFilterFactory" 
                pattern=" " replacement=""/>
    ...

次のように、それをフィールドのタイプとして使用します。

<field name="keywords" type="text_no_ws" multiValued="true" ... />
于 2013-03-28T19:57:49.880 に答える