Пример включает в себя сохранение некоторых строк, которые не были бы найдены в списке английских sh слов («nrd», «mcclafferty», «mccool») при удалении «0wet3bxtfl» и «9wlhju7cxf», поэтому ожидаемый результат, вероятно, лучше всего достигается путем удаления любых непробельных последовательностей, которые содержат либо букву, за которой следует di git, либо di git, за которой следует буква (вместе с любыми последующими пробелами), независимо от того, являются ли слова "Engli *" 1008 * "или нет.
Следующее будет делать это:
import re
...
filtered = re.sub('[^\s]*(\d[a-zA-Z]|[a-zA-Z]\d)[^\s]* *', '', df['text'])