Comment mettre en évidence tous les mots-clés dans un texte?

1

Nous utilisons une grande liste d'expressions communes de polluposteurs dans le cadre de notre système de filtrage de spams. Toute correspondance dans l'objet ou le corps du message d'un courrier électronique le met directement en quarantaine hébergée dans Office 365.

Aujourd'hui, j'ai remarqué que notre premier faux positif avait été envoyé à la quarantaine hébergée. Je veux savoir quels mots ou quelles phrases correspondent à quelque chose dans la liste afin de pouvoir le supprimer de la liste mais de ne pas le trouver (en raison du grand nombre de mots-clés et de phrases que nous avons maintenant dans la liste).

Tout est actuellement dans un document du bloc-notes. J'ai pensé à utiliser Beyond Compare mais je ne vois pas comment cela pourrait fonctionner dans cette situation.

Comment mettre en évidence les correspondances entre le message d'origine et la liste de mots clés / expressions?

Austin '' Danger '' Powers
la source
Comment les mots-clés sont-ils séparés dans le fichier texte, les virgules ou les nouvelles lignes?
Tymric
Je viens de copier et coller directement à partir du Centre d'administration Exchange. Leur format est donc le suivant: "nom est mr" ou "nom est mrs" ou "cette somme de" ou "ces fondations ont" ou "ces fondations ont" ou "de vos amis à" ou "1ère page sur Google" ou "N ° 1 sur Google" ou "1ère page de Google" ou "Google 1ère page" ou "experts en marketing" ou "analyse de la concurrence" ou "à des tarifs abordables" ou "nous fournissons" ou "votre site est-il classé"? Cela ne me dérange pas de changer le formatage si nécessaire.
Austin '' Danger '' s'alimente
'ou' rend les choses plus compliquées. Est-il possible d'avoir chaque mot clé sur une ligne séparée? Si non, alors je dois modifier ma réponse
Tymric
Cela semble être une excellente réponse. J'ai fini par n'envoyer que la première moitié, puis la deuxième moitié du courrier électronique via notre serveur de messagerie, puis de faire de même avec la moitié qui a été mise en quarantaine. Une fois que j’ai réduit le tout à quelques phrases, j’ai repéré le problème et supprimé la phrase spammy qui apparaît apparemment dans une conversation régulière parfois!
Austin '' Danger '' s'alimente

Réponses:

1

Si chaque phrase clé se trouve sur une ligne distincte, le moyen le plus simple consiste à utiliser un fichier de traitement par lots:

@echo off
(for /F "tokens=*" %%i in (keywords.txt) do findstr /C:"%%i" /N /I message.txt) > result.txt

Enregistrez-le sous filter.batet exécutez à partir de la ligne de commande. keywords.txtest le nom du fichier avec les mots-clés, par exemple

spammer1
spammer2
mr. spammer3

et message.txtdoit contenir le message en question:

Hi, I am spammer2. Give me money

regards,
Mr. spammer3

Une fois le script exécuté, les numéros de ligne correspondants sont générés dans results.txt:

1:Hi, I am spammer2. Give me money
4:Mr. spammer3
Tymric
la source