Bonjour à tous,
j'ai une affection toute particulière pour le C/C++, langage avec lequel je perds la moitié de mes cheveux à chaque fois que je veux faire un truc.
(Je préfère le Java, même si c'est pas bien.)
Bref.
J'ai une string avec des infos, dont deux que je veux récupérer:
string line = "VR=2.0,ID=01:68:39:39:11:00:00:bd,SP=B-2,DB=20,DR=601,TM=1151,TS=2016";
Tous les nombres changent à chaque fois, donc...
Les parties que je veux récupérer sont en rouge.
Je ne sais pas comment faire ça.
En java, j'aurais fait un coup d'expression régulière (car en plus je pouvais voir si la chaîne correspondait au pattern), mais en C++, j'ai trop de mal.
Comment faire?
J'aimerais utiliser les expressions régulières, mais je n'ai pas envie d'importer de library externes. (genre boost).
J'ai essayé de faire un sscanf avec des bouts d'expression régulières, mais ça ne marche pas.
Je me suis sans doute gouré...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 char beaconID[5]; int beaconDist = 0; sscanf(line.c_str(),"VR=*[^,],ID=*[^,],SP=%5[^,]s,DB=*[^,],DR=%d,[.+]",beaconID,&beaconDist);
Quelqu'un pourrait me venir en aide s'il vous plait???
Merci d'avance !
Philippe
Partager