ElasticSearch - Searching with hyphens in name
You can try removing the hyphen using a mapping char filter:
something like this would remove the hyphen:
{ "index" : { "analysis" : { "char_filter" : { "my_mapping" : { "type" : "mapping", "mappings" : ["-=>"] } }, "analyzer" : { "custom_with_char_filter" : { "tokenizer" : "standard", "char_filter" : ["my_mapping"] } } } }}
it's something of a blunt force instrument as it will strip all hyphens but it should make "t-shirt" and "tshirt" match