Je vous déconseille d'utiliser une simple expression régulière pour résoudre ce problème. Il y a trop de mots qui sont des sous-chaînes d'autres mots sans rapport, et vous deviendrez probablement fou en essayant de suradapter les solutions plus simples déjà fournies.
Il vous faudra au moins un algorithme de troncature naïf (essayez le Porter stemmer ; il existe un code gratuit dans la plupart des langues) pour traiter le texte en premier. Conservez ce texte traité et le texte prétraité dans deux tableaux séparés et séparés dans l'espace. Veillez à ce que chaque caractère non alphabétique ait également son propre index dans ce tableau. Quelle que soit la liste de mots que vous filtrez, équeutez-les également.
L'étape suivante consiste à trouver les indices du tableau qui correspondent à votre liste de mots "stop". Retirez-les du tableau non traité, puis rejoignez-les sur les espaces.
Cette méthode est à peine plus compliquée, mais elle sera beaucoup plus fiable. Si vous avez des doutes sur la valeur d'une approche plus axée sur la PNL, vous pouvez faire des recherches sur les sujets suivants erreurs clbuttiques .