I have list of strings say,
x1 = ['esk','wild man','eskimo', 'sta','(+)-6-[amina(4-chlora)(1-metha-1h-imidol-5-yl)mhyl]-4-(3-chlora)-1-methyl-2(1h)-quinoa']
I need to extract the x1s present in few sentences.
My sentence is "eskimo lives as a wild man in wild jungle and he stands as a guard".
In the sentence, I need to extract first word eskimo and the seventh and eighth words wild man and they are separate words as in x1. I should not extract "stands" even though sta is present in stands.
def get_name(input_str):
prod_name= []
for row in x1:
if (row.strip().lower()in input_str.lower().strip()) or (len([x for x in input_str.split() if "\b"+x in row])>0):
prod_name.append(row)
return list(set(prod_name))
The function
get_name("eskimo lives as a wild man in wild jungle and he stands as a guard")
returns
[esk, eskimo,wild man,sta]
But the expected is
[eskimo,wild man]
May I know what has to be changed in the code?