Extraction text

fatenIM Messages postés 7 Date d'inscription lundi 7 décembre 2009 Statut Membre Dernière intervention 28 décembre 2009 - 6 déc. 2009 à 19:02
cptpingu Messages postés 3837 Date d'inscription dimanche 12 décembre 2004 Statut Modérateur Dernière intervention 28 mars 2023 - 6 déc. 2009 à 21:00
salut à tous
Mon projet consiste à écrire un programme en langage c permettant d'offrir à l'utilisateur la possibilité de faire une recherche en utilisant l'approche naïve de recherche d'une requête dans un document donné.
J'écris un code qui ouvre le fichier test.txt en lecture, affiche la première ligne et referme le fichier et le code va bien
ma problème est que je veux faire l'extraction de contenu de ce fichier(c'est t'a dire éliminé l'apostrophe,les caractères de ponctuation...)mais je ne trouve pas le code poour faire cette tache.
Vous pouvez m'aide

5 réponses

cptpingu Messages postés 3837 Date d'inscription dimanche 12 décembre 2004 Statut Modérateur Dernière intervention 28 mars 2023 123
6 déc. 2009 à 20:15
Pour éliminer la ponctuation, ce n'est pas magique, c'est à toi de le faire. Tu parcours ta chaîne, et tu supprimes simplement tous les caractères qui ne te plaisent pas.

Deux solutions:
* Tu déplaces successivement tout les caractères vers la gauche pour remplir un trou que tu aurais fait. Puis tu fait appel à realloc sur ta chaîne pour tronquer sa taille.
* Tu peux aussi construire une autre chaîne à partir de celle existante. C'est peut être plus facile, bien que moins optimisé en terme d'occupation mémoire.

Si tu veux réaliser une recherche, tu peux aussi laisser la ponctuation, et rechercher directement parmi les tokens.
Regarde du côté des fonctions "strstr", "strtok" et "strtok_r".
0
fatenIM Messages postés 7 Date d'inscription lundi 7 décembre 2009 Statut Membre Dernière intervention 28 décembre 2009
6 déc. 2009 à 20:30
salut à tous
Je trouve la fonction ignore qui permet d'extraction de fichier text mais je ne sais pas comment utilisé cette fonction en c++
Merci
0
cptpingu Messages postés 3837 Date d'inscription dimanche 12 décembre 2004 Statut Modérateur Dernière intervention 28 mars 2023 123
6 déc. 2009 à 20:34
Es-tu en C ou en C++ ? C'est totalement différent !

Si tu es en C++, alors utilise Boost::tokenizer. En trois lignes, tu as quelques chose qui, par défaut, avance dans les mots en gérant automatiquement tous les signes de ponctuation.
0
fatenIM Messages postés 7 Date d'inscription lundi 7 décembre 2009 Statut Membre Dernière intervention 28 décembre 2009
6 déc. 2009 à 20:57
salut CptPingu
J'utilise c++ pour faire l'extraction le contenu d'un fichier alors je cherche un code pour cela.
Je veux dire que je ne te compris pas comment utilise Boost::tokenizer.
Merci
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cptpingu Messages postés 3837 Date d'inscription dimanche 12 décembre 2004 Statut Modérateur Dernière intervention 28 mars 2023 123
6 déc. 2009 à 21:00
Toutes les explications, et exemples d'utilisation sur:
http://lmgtfy.com/?q=boost%3A%3Atokenizer+tutorial
0
Rejoignez-nous