Détecter un format dans une chaîne.

Résolu
Nykozoft Messages postés 9 Date d'inscription jeudi 15 mai 2008 Statut Membre Dernière intervention 14 février 2009 - 9 févr. 2009 à 22:44
Nykozoft Messages postés 9 Date d'inscription jeudi 15 mai 2008 Statut Membre Dernière intervention 14 février 2009 - 12 févr. 2009 à 18:08
Bonjour à tous,
Existe-t-il une fonction qui puisse détecter un format dans une chaîne ?
Je m'explique :
mettons que j'ai une chaîne "N110 D23 F112",
et moi que je cherche un "D%d F%d"
Existe-t-il une fonction (une sorte de scanf) qui renverrait la position de la première occurrence trouvée (ou un pointeur vers le premier caractère concerné, je ne suis pas contre)?

Merci d'avance.

4 réponses

Nykozoft Messages postés 9 Date d'inscription jeudi 15 mai 2008 Statut Membre Dernière intervention 14 février 2009
12 févr. 2009 à 18:08
Finalement j'ai trouvé une fonction :
sscanf(char*source, char*format, …) qui renvoie le nombre d'éléments associés, et fonctionne comme scanf mais avec une chaine de caractère.
3
cs_Adeon Messages postés 293 Date d'inscription jeudi 21 août 2003 Statut Membre Dernière intervention 10 avril 2015 2
10 févr. 2009 à 08:32
Pas à ma connaissance, mais tu sais, faut souvent mettre la main a la pâte, l'algo qui fait ça n'est pas bien compliquée !
Tu mettra moins de temps a la faire et ce sera + enrichissant que de rechercher "bêtement" sur google.
______________________
Adeon, programmeur de jeux sur directX 9 (http://theolith.com) à votre service !
0
JejeLand Messages postés 111 Date d'inscription mercredi 2 février 2005 Statut Membre Dernière intervention 5 août 2011 1
10 févr. 2009 à 11:44
Salut en c il y a char *strpbrk(char *string1,char *string2) renvoi la première occurrence string2 trouvé dans string1.

strpbrk("N110 D23 F112","D")
0
Nykozoft Messages postés 9 Date d'inscription jeudi 15 mai 2008 Statut Membre Dernière intervention 14 février 2009
11 févr. 2009 à 20:33
Merci de vos réponses, je ferai ma propre petite fonction...
je me demandais si en gérant les flux avec fscanf, n'y aurait-il pas moyen ?
0
Rejoignez-nous