Trouver un mot dans un tableau de mot

Lakaiz -  
[Dal] Messages postés 6205 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Je suis en train de réaliser un programme en C pour faire une boite mail automatique. J'ai besoin de créer une fonction qui va trouver un mot-clé parmis mon corps de mail.
Mon corps de mail est un tableau stocké dans une structure que je vais écrire dans un fichier txt.
Mon mot-clé et également dans un fichier txt.
Je pense que la fonction est faisable en cherchant mes espaces dans mon corps de mail et en comparant les caractères qui sont entre mes espaces avec mon mot-clé pour voir si celui ci est bien dans le texte.

Si vous avez des liens ou des codes qui pourraient m'aider je suis prenneur.

Merci,

Configuration: Linux / Firefox 79.0

2 réponses

Phil_1857 Messages postés 1872 Date d'inscription   Statut Membre Dernière intervention   168
 
Bonjour Lakaiz,

Je suis preneur...

En C, il existe une fonction pour chercher une sous-chaine de caractères dans une chaine,
pas besoin d'aller chercher les espaces entre les mots et comparer les caractères:

lecture mot_cle dans mots_cles.txt
lecture ligne dans corps_mail.txt
recherche mot_cle dans ligne
si pas trouvé : ligne suivante, etc ...
1
[Dal] Messages postés 6205 Date d'inscription   Statut Contributeur Dernière intervention   1 104
 
Oui, mais si le mot clef est "tarte" peut-être qu'il ne veut pas que le programme réagisse à "starter", par exemple.

Donc une fonction de recherche de sous-chaîne simple comme
strstr()
n'est probablement pas souhaitable.
0
[Dal] Messages postés 6205 Date d'inscription   Statut Contributeur Dernière intervention   1 104
 
Salut Lakaiz,

Tu devrais te documenter sur la fonction
strtok()
, elle permet, par appels successifs à cette fonction, de rechercher des séquences de caractères séparés par des caractères délimiteurs, par exemple le caractère espace.

Tu voudras probablement ajouter de la ponctuation aux caractères délimiteurs.

Dal
0