Prob fonction strstr()

Prob fonction strstr() - C++ - Programmation

Marsh Posté le 01-12-2002 à 13:22:34    

Bonjour.
 
En fait j'utilise strstr pour recherche un mot clé dans une chaine de caractères donnée comme ceci:  
 

Code :
  1. if(strstr(ChaineRecue, motclef)!=NULL)
  2. {
  3.     printf("Trouvé!" );
  4. }


 
ca marche !
 
Mais le prob c'est que c'est case sensitive, cad que si ChaineRecue est egal a 'Salut comment ca va' par exemple et que j'entre SALUT comme motclef, il ne le trouvera pas parce que il differencie les majuscule des minuscule.
 
J'aimerais savoir comment faire pour qu'il ne fasse pas la != .
Alors plutot que de faire une fonction moi meme, je me renseigne au cas ou il en existe une toute faite, merci d'avance !  
 


---------------
Ptit con de goret je t'emmerde ^_^
Reply

Marsh Posté le 01-12-2002 à 13:22:34   

Reply

Marsh Posté le 01-12-2002 à 13:27:09    

ben tu transformes tes deux chaines char par char avec tolower() / toupper() (dans ctype.h) ou tu regardes si l'API de ton OS te fournit quelque chose (sous linux, strcasestr())


---------------
du bon usage de rand [C] / [C++]
Reply

Marsh Posté le 01-12-2002 à 13:30:13    

Je pensais à strcasecmp et strncasecmp non ?

Reply

Marsh Posté le 01-12-2002 à 13:34:24    

Taz@PPC a écrit a écrit :

ben tu transformes tes deux chaines char par char avec tolower() / toupper() (dans ctype.h) ou tu regardes si l'API de ton OS te fournit quelque chose (sous linux, strcasestr())




 
Si j'ai bien compris comment fonctionne tolower et toupper, il se base sur le code de caractere ascII du caractere? donc je dois encore faire une boucle pour convertir tout ca?
y a pas plus simple? Sinon c'est deja ca :)


---------------
Ptit con de goret je t'emmerde ^_^
Reply

Marsh Posté le 01-12-2002 à 13:38:37    

Bon ben ca marche +-,
je v m'en sortir avec ca merci bcp :)
 
a+


---------------
Ptit con de goret je t'emmerde ^_^
Reply

Marsh Posté le 01-12-2002 à 13:51:22    

_Maximus_ a écrit a écrit :

Bon ben ca marche +-,
je v m'en sortir avec ca merci bcp :)
 
a+




 
comment ca plus ou moins?
 
faut faire un boucle str[i]=tolower(str[i]) sur les deux chaines, mais c'est sur que si tu tiens a conserver tes deux chaines intactes, n'oublies pas de les dupliquer


---------------
du bon usage de rand [C] / [C++]
Reply

Marsh Posté le 01-12-2002 à 14:35:40    

Taz@PPC a écrit a écrit :

 
 
comment ca plus ou moins?
 
faut faire un boucle str[i]=tolower(str[i]) sur les deux chaines, mais c'est sur que si tu tiens a conserver tes deux chaines intactes, n'oublies pas de les dupliquer




 
c ce que j'ai fais!  
 
J'ai dit plus ou moins par habitude de toujours trouver des bugs apres en ayant pensé que ca marchait nickel :p


---------------
Ptit con de goret je t'emmerde ^_^
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed