...
There are different levels of indexing/search language configuration. They are listed below by decreasing priority. The former are therefore given priority.
If a property has a label been tagged with elasticsearch/analyzer/[analyzer name] (e. g. elasticsearch/analyzer/simple), this parser is forced to be used regardless of language. Consult the documentation of your version of Elasticsearch to know the available analyzers.
If a property has a label been tagged with elasticsearch/default_lang/[lang/[language code] (e. g. elasticsearch/default_lang/en) this language is taken.
If the property is an internationalization: the language is extracted from its suffix. (e. g. titreen is an internationalisation of the title analysed in English).
If the object has an elasticsearch/default_lang/[lang/[language code] tag, this language is taken.
Finally, we take the default indexing language configured in the administration.
Note
Any modification of this language information automatically leads to a re-indexation of the contents.
SKU, product references, identifier indexation
When the property contains numbers, separators like “_”, “/”… the ElasticSearch standard analyzer will remove these numbers in it search index.
To index these type of properties, tag it with the elasticsearch/analyzer/words_and_numbers tag.
...
If you want to search a part of a SKU, for example that you query matches ABC-123 and ABC-124, don’t forget to use the tokens in your query : ABC*. If you query “ABC”, il will only match the exact string.
Using a exact keyword Analyzer from ElasticSearch
If you need to index the EXACT string in the property, you can use an existing Analyzer from ElasticSearch such as “keyword” : https://www.elastic.co/guide/en/elasticsearch/reference/6.8/analysis-keyword-analyzer.html
To index these type of properties, tag it with the elasticsearch/analyzer/keyword tag.