Apache Solrのコアを作成したあと,$SOLR/server/solr/birth_3gram.xml/conf/managed-schema
のstringsフィールドの設定を以下のように変更します.(今回はカンマが含まれる文字列をsolrにsplitさせて検索させる方法です)
<fieldType name="strings" class="solr.TextField" multiValued="true"> <analyzer type="index"> <tokenizer class="solr.PatternTokenizerFactory" pattern="\s*,\s*"/> <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" /> <filter class="solr.LowerCaseFilterFactory"/> </analyzer> <analyzer type="query"> <tokenizer class="solr.PatternTokenizerFactory" pattern="\s*,\s*"/> <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" /> <filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/> <filter class="solr.LowerCaseFilterFactory"/> </analyzer> </fieldType>
その後,Analysisで確認すると分割されていることがわかります.
今回はindex, query両方共に適応していますが,どちらかだけしかいらない場合はその都度消します.