Extraction sous-chaîne dans chaîne de caractères

Résolu
nar66 - 28 oct. 2013 à 17:23
 nar66 - 29 oct. 2013 à 14:03
Bonjour,
je developpe une application sur vb 6.0, s'il vous plais je fais faxce à un problème.
je recois un sms dans ma textbox et j'aimerais recupérer d'une maniere automatique le message utile; ie ne pas tenir compte de la date et du numéro de téléphone.voila para exemple un message que j'ai recu:

+CMT: "+23796317793","ìI¸!","13/10/28,15:16:43+04"
INCENDIE,0,0

j'aimerai enregistrer uniquement le message utile "incendie" dans une variable.
dans l'attente d'une suite favorable je vous remercie d'avance

7 réponses

ucfoutu
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
235
28 oct. 2013 à 17:29
Bonjour,
Tes chaînes à traiter sont-elles TOUJOURS "construites" comme celle montrée en exemple ?
(se terminant par CHAINE_A_EXTRAIRE,#n#)
Si tel n'est pas le cas : quel est leur point commun éventuel ?
Su aucun format toujours identique auquel se "raccrocher" ===>> impossible !
0
bsr ucfoutu, merci pour l'interet accordé à ma demande.
en fait leur point commun est que le message utile commence toujour au 52 eme caractére, ie on a toujour une ligne de ce genre
+CMT: "+23796317793","ìI¸!","13/10/28,15:16:43+04"
0
ucfoutu
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
235
Modifié par ucfoutu le 28/10/2013 à 17:47
Alors la simple et bête utilisation de Mid (à lire dans ton aide VB6, s'il te plait) permettra d'extraire tout ce qui se trouve à partir du 53ème caractère !
Et donc (dans ton exemple) : INCENDIE,0,0
Mais tu dis ne vouloir que INCENDIE
La question demeure donc entière : quel est le format TOUJOURS présent auquel te raccrocher maintenant ?

________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviend
0
bjr ucfoutu pardon d'avoir tardé à répondre
les messages non pas le même format mais comme c'est moi qui fait le prog d'émission, je peux m'arranger à ce que le message utile débute toujours par # et se termine par ## par exemple

+CMT: "+23796317793","ìI¸!","13/10/28,15:16:43+04"
#INCENDIE##,0,0

je ne sait pas si on peut faire une boucle qui demande de récupérer le chaine commençant par # et se terminant par ##
merci
0

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

Posez votre question
ucfoutu
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
235
Modifié par ucfoutu le 29/10/2013 à 08:34
alors regarde :
toto = "blablabla#INCENDIE#blabla"
MsgBox Split(toto, "#")(1)

Pour comprendre : ouvre ton aide VB6 sur le mot Split et lis !
Ceci étant dit, je choisirais à ta place un caractère autre que #. Chr(1) par exemple
regarde :
toto = "blablabla" & Chr(1) & "INCENDIE" & Chr(1) & "blabla"
MsgBox Split(toto, Chr(1))(1)


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviend
0
nar66
Messages postés
8
Date d'inscription
vendredi 29 avril 2011
Statut
Membre
Dernière intervention
29 octobre 2013

29 oct. 2013 à 08:46
cool ucfoutu, je vais l'éssayer, et je te dirai la suite ....
mais telque je vois, je pense que ça ira
merci ...
0
ucfoutu
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
235
29 oct. 2013 à 09:57
Bien.
J'ai modifié en t'attendant ton titre.
Car, que la chaîne à traiter soit ou non dans une textbox, ton problème est celui de l'extraction d'une sous-chaîne en son sein.
0
cs_ShayW
Messages postés
3258
Date d'inscription
jeudi 26 novembre 2009
Statut
Membre
Dernière intervention
3 décembre 2019
56
29 oct. 2013 à 10:17
Bonjour ucfoutu

Bien.
J'ai modifié en t'attendant ton titre.
,

as tu les privilèges
ah si tu as le temps tu peux modifier les titres comme
VB ,Problème ,help etc il y a en a pas mal LOL
0
ucfoutu
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
235
Modifié par ucfoutu le 29/10/2013 à 10:37
Bonjour, cs_ShayW,
J'ai en effet ce privilège.
Je préfère en général inviter le demandeur à le faire lui-même (le rendre plus conscient de la vocation et de la signification d'un titre de discussion)....
Je n'ai moi-même modifié celui-ci que parce que le demandeur avait fait un effort de rédaction de son titre, mais qu'il avait été maladroit dans sa démarche rédactionnelle.

PS : le choix de rédaction d'un titre permet déjà au demandeur d'isoler plus clairement le genre de la difficulté qu'il rencontre. C'est donc un geste utile et sain, y compris pour lui-même.
0
une fois de plus merci ucfoutu, je viens de tester le code split et cela fonctionne exactement comme je voulais alors merci...
0