Сложно проверить, является ли слово действительным английским словом.
Для этого вам нужно иметь словарь, с которым нужно сверять слово, или использовать nltk.
pip install nltk
from nltk.corpus import wordnet
set([w for w in (string1 + string2).split() if wordnet.synsets(w)])
Out[41]: {'apple', 'banana', 'kiwi', 'lemon', 'mango'}
Чтобы поймать цифры, если они есть, добавьте isdigit ().
st1 = 'Includes Og Added Sugars'
st2 = 'Includes 09 Added Sugars 09'
set([w for w in (st1 + st2).split() if (wordnet.synsets(w) or w.isdigit())])
Out[30]: {'09', 'Added', 'Includes', 'Sugars'}
Чтобы поймать сокращения, такие как g, mg, добавьте re.match ().
set([w for w in (st1 + st2).split() if (wordnet.synsets(w) or w.isdigit() or re.match(r'\d+g|mg',w))])
Out[40]: {'09', '0g', 'Added', 'Includes', 'Sugars'}