copyFieldコマンドを使用して、数値を含むテキストフィールドを取得しようとしていますが、範囲フィルタリング可能な数値フィールドにいくつかの関連テキストがあります。
例えば。通常値1.3または200ダーティ値200ccまたは1,500
フィルタを使用して数字以外の文字を削除するFloatフィールドタイプを設定することは可能ですか?
このように定義すると、フィルターが処理されていないようです
<fieldType name="floatNoText" class="solr.TrieFloatField" >
<filter class="solr.PatternReplaceFilterFactory" pattern="[^0-9.]" replacement="" replace="all"/>
</fieldType>
アナライザーで定義した場合:
<fieldType name="floatNoText" class="solr.TrieFloatField" >
<analyzer>
<filter class="solr.PatternReplaceFilterFactory" pattern="[^0-9.]" replacement="" replace="all"/>
</analyzer>
</fieldType>
次のエラーが発生します:
重大:org.apache.solr.common.SolrException:クラスまたはトークナイザーとフィルターリストのないアナライザー
フィルタを適用できるように数値フィールドを設定する方法はありますか?または、ソースフィールドがデータのストリップバージョンをコピーフィールドに提示するようにすることはできますか?