How to match all tokens? (get rid of false positive result)

Hi, I need to find out by the title whether searched game already exists in my ES.

I use custom analyzer to meet my needs with features like transform roman numerals, lowercase, custom stopwords etc...

So when I create new document for Assassin's Creed II: Deluxe Edition it saves following tokens:

['assassins', 'creed', '2', 'deluxe', 'edition']

Then when I want to verify if game Assassin's Creed - Deluxe Edition already exists its matching following tokens:

['assassins', 'creed', 'deluxe', 'edition']

I use this query:

{
	"query": {
		"match": {
			"title": {
				"query": "Assassin's Creed - Deluxe Edition",
				"minimum_should_match": "100%"
				
			}
		}
	}
}

Expected result is "not found" but instead it returns Assassin's Creed II: Deluxe Edition which is obviously false positive. In my query is missing one token. Therefore I should not get this result. How can i restrict that all tokens must be included in query? Or how can I achieve my goal?

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.