[C] extraire les mots voisin
stroumpf
Messages postés
289
Date d'inscription
Statut
Membre
Dernière intervention
-
stroumpf Messages postés 289 Date d'inscription Statut Membre Dernière intervention -
stroumpf Messages postés 289 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
bonsoir
voilà jai fait une fonction qui extrait les 2mots voisinS:
voila : j'ai du texte ::
bonjour les amis .
bonsoir ma famille .
voila le resultat :
bonjour les
les amis
amis bonsoir
bonsoir ma
ma famille
or c'est faux
j'aime extraire les mots voisin qui ont sur le meme ligne c'est à dire voila le resultat attendu :
bonjour les
les amis
bonsoir ma
ma famille
voila la fonction d'extraction :
bonsoir
voilà jai fait une fonction qui extrait les 2mots voisinS:
voila : j'ai du texte ::
bonjour les amis .
bonsoir ma famille .
voila le resultat :
bonjour les
les amis
amis bonsoir
bonsoir ma
ma famille
or c'est faux
j'aime extraire les mots voisin qui ont sur le meme ligne c'est à dire voila le resultat attendu :
bonjour les
les amis
bonsoir ma
ma famille
voila la fonction d'extraction :
Code : C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 char* get_word(FILE *fdesc, char *buff, size_t size)
{
char *ret=NULL;
if( fdesc!=NULL && buff!=NULL && size>0 )
{
int c;
int i=0;
while( ret==NULL && i<size && (c=fgetc(fdesc))!=EOF )
{
if( isalpha(c) )
{
buff[i]=c;
i++;
}
else if( i>0 )
{ /* mot */
buff[i]='\0';
ret=buff;
}
}
}
return ret;
}
j'attends vos reponses
merci
bonsoir
voilà jai fait une fonction qui extrait les 2mots voisinS:
voila : j'ai du texte ::
bonjour les amis .
bonsoir ma famille .
voila le resultat :
bonjour les
les amis
amis bonsoir
bonsoir ma
ma famille
or c'est faux
j'aime extraire les mots voisin qui ont sur le meme ligne c'est à dire voila le resultat attendu :
bonjour les
les amis
bonsoir ma
ma famille
voila la fonction d'extraction :
char* get_word(FILE *fdesc, char *buff, size_t size) { char *ret=NULL; if( fdesc!=NULL && buff!=NULL && size>0 ) { int c; int i=0; while( ret==NULL && i<size && (c=fgetc(fdesc))!=EOF ) { if( isalpha(c) ) { buff[i]=c; i++; } else if( i>0 ) { /* mot */ buff[i]='\0'; ret=buff; } } } return ret; }
bonsoir
voilà jai fait une fonction qui extrait les 2mots voisinS:
voila : j'ai du texte ::
bonjour les amis .
bonsoir ma famille .
voila le resultat :
bonjour les
les amis
amis bonsoir
bonsoir ma
ma famille
or c'est faux
j'aime extraire les mots voisin qui ont sur le meme ligne c'est à dire voila le resultat attendu :
bonjour les
les amis
bonsoir ma
ma famille
voila la fonction d'extraction :
Code : C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 char* get_word(FILE *fdesc, char *buff, size_t size)
{
char *ret=NULL;
if( fdesc!=NULL && buff!=NULL && size>0 )
{
int c;
int i=0;
while( ret==NULL && i<size && (c=fgetc(fdesc))!=EOF )
{
if( isalpha(c) )
{
buff[i]=c;
i++;
}
else if( i>0 )
{ /* mot */
buff[i]='\0';
ret=buff;
}
}
}
return ret;
}
j'attends vos reponses
merci
A voir également:
- [C] extraire les mots voisin
- Extraire une video youtube - Guide
- Extraire le son d'une vidéo - Guide
- Extraire image pdf - Guide
- Où sont stockés les mots de passe sur android - Guide
- Extraire texte d'une image - Guide
2 réponses
Il faut utiliser juste getline (première boucle, qui extrait les lignes une par une) et strtok (boucle imbriquée à l'intérieur, qui extrait les mots un par un).
http://man.developpez.com/man3/getline.3.php
http://man.developpez.com/man3/strtok.3.php
Attention à la gestion des pontuations (en fait dans strtok, ton séparateur est une ponctuation ou un espace ou une tabulation)
Bonne chance
http://man.developpez.com/man3/getline.3.php
http://man.developpez.com/man3/strtok.3.php
Attention à la gestion des pontuations (en fait dans strtok, ton séparateur est une ponctuation ou un espace ou une tabulation)
Bonne chance
tu peux m'aider un peu plus svp
sera gentil de ta part
merci