Extraction sous-chaîne dans chaîne de caractères [Résolu]

- - Dernière réponse :  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
Afficher la suite 

Votre réponse

7 réponses

Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Contributeur
Dernière intervention
11 avril 2018
264
0
Merci
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 !
Commenter la réponse de ucfoutu
0
Merci
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"
Commenter la réponse de nar66
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Contributeur
Dernière intervention
11 avril 2018
264
0
Merci
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
Commenter la réponse de ucfoutu
0
Merci
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
Commenter la réponse de nar66
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Contributeur
Dernière intervention
11 avril 2018
264
0
Merci
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
Commenter la réponse de ucfoutu
Messages postés
8
Date d'inscription
vendredi 29 avril 2011
Dernière intervention
29 octobre 2013
0
Merci
cool ucfoutu, je vais l'éssayer, et je te dirai la suite ....
mais telque je vois, je pense que ça ira
merci ...
ucfoutu
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Contributeur
Dernière intervention
11 avril 2018
264 -
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.
cs_ShayW
Messages postés
3247
Date d'inscription
jeudi 26 novembre 2009
Dernière intervention
26 décembre 2018
51 -
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
ucfoutu
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Contributeur
Dernière intervention
11 avril 2018
264 -
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.
Commenter la réponse de nar66
0
Merci
une fois de plus merci ucfoutu, je viens de tester le code split et cela fonctionne exactement comme je voulais alors merci...
Commenter la réponse de nar66

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.