ElasticSearch - Suche mit Bindestrichen im Namen
Ich habe einen Produktkatalog, den ich in ElasticSearch mithilfe des Elastica-Clients indiziere. Ich bin sehr neu bei ElasticSearch BTW.
Es gibt Produkte in meinem Katalog, die haben't-shirt'
in ihren Namen. Sie werden jedoch nicht in den Suchergebnissen angezeigt, wenn ich tippe'tshirt'
.
Was kann ich damit machen't-shirt'
kann auch in Ergebnissen auftauchen?
Ich bin gefolgtdiese Tutorial und implementiert die folgenden für Indizes:
'analysis' => array(
'analyzer' => array(
'indexAnalyzer' => array(
'type' => 'custom',
'tokenizer' => 'whitespace',
'filter' => array('lowercase', 'mySnowball')
),
'searchAnalyzer' => array(
'type' => 'custom',
'tokenizer' => 'whitespace',
'filter' => array('lowercase', 'mySnowball')
)
),
'filter' => array(
'mySnowball' => array(
'type' => 'snowball',
'language' => 'English'
)
)
)