Invalid Search results returned

Probably because you have indexed normal with the default analyzer which indexed it as normal.
no is not normal so that does not match.

May be use a different analyzer which can produces subtokens like no, nor, norm, norma and normal? Like a edge ngram based analyzer...

If you don't succeed, could you provide a full recreation script as described in About the Elasticsearch category. It will help to better understand what you are doing. Please, try to keep the example as simple as possible.

A full reproduction script will help readers to understand, reproduce and if needed fix your problem. It will also most likely help to get a faster answer.