meuh33
Messages postés29Date d'inscriptionlundi 14 juin 2004StatutMembreDernière intervention 6 mai 2006
-
21 avril 2006 à 16:32
meuh33
Messages postés29Date d'inscriptionlundi 14 juin 2004StatutMembreDernière intervention 6 mai 2006
-
21 avril 2006 à 17:20
Bonjour,
Je suis sous visual basic 6.0.
J'ai besoin d'enlever les premiers caracteres contenus dans une variable de type string.
J'ai cherché sur google, dans MSDN, mais les "solutions" trouvées ne marchaient pas (érreurs, comme si la comande n'existait pas !!)
jrivet
Messages postés7392Date d'inscriptionmercredi 23 avril 2003StatutMembreDernière intervention 6 avril 201260 21 avril 2006 à 17:12
Salut,
Tu as deux possibilites:
Dim Reception As String
Dim TypeMessage As String
Dim Donnee As String
Dim Param() As String
Param = Split(Reception, " ", 1)
TypeMessage = Param(0)
Donnee = Param(1)
Ca c est dans le cas ou tu puisse avoir des type de message du style %MMMM
Sinon si il y a toujours %+1Lettre alors Tu peux utiliser la Fonction Mid
MSDN Dit:
Renvoie une valeur de type Variant (String) contenant un nombre indiqué de caractères extraits d'une chaîne de caractères.
jrivet
Messages postés7392Date d'inscriptionmercredi 23 avril 2003StatutMembreDernière intervention 6 avril 201260 21 avril 2006 à 16:42
Salut,
- En complément j'ajouterai simplement (enfin La MSDN ajouterait)
Right Renvoie une valeur de type Variant (String) contenant le nombre indiqué de caractères d'une chaîne en partant de la droite
meuh33
Messages postés29Date d'inscriptionlundi 14 juin 2004StatutMembreDernière intervention 6 mai 2006 21 avril 2006 à 16:54
Merci pour ces réponses rapides, et pour tes exemples précis Jriver :)
Je vais essayer tout de suite, je revien pour valider la réponse si ca marche (enfin si j'arrive à le faire marcher ^^) !
Vous n’avez pas trouvé la réponse que vous recherchez ?
meuh33
Messages postés29Date d'inscriptionlundi 14 juin 2004StatutMembreDernière intervention 6 mai 2006 21 avril 2006 à 17:05
Cette fonction marche, mais elle ne répond malheureusement pas à mes besoins, je m'explique:
J'ai fait un serveur et un client avec Winsock.
Pour que le serveur et le client sachent a quoi correspondent les messages qu'ils recoivent, j'ai décidé de metre en place un systeme de commandes:
Exemple: Serveur envoi "%M Salut ca va?" au Client.
Le Client sait que c'est un message texte car il a reconu la "commande" %M en début de message.
Le Client va donc retirer %M de la variable, puis l'afficher sous forme de texte.
Le probleme c'est que l'on ne peut pas prévoir la longueur du message, donc la fonction Right ne convient pas dans ce cas la :(
meuh33
Messages postés29Date d'inscriptionlundi 14 juin 2004StatutMembreDernière intervention 6 mai 2006 21 avril 2006 à 17:20
Merci Jrivet pour ta rapidité et ton efficacité !
J'ai trouvé une autre solution en meme temps que toi:
1. Je reconnais quelle "commande" est utilisée:
If message_recu_s Like "%M*" Then
Dim vrai_long_ As String
Dim long_ As String
Dim long_ As String
long_ = Len(message_recu_s)
vrai_long_ = long_ - 2 'Je connais le nombre de caracteres de la "comande" donc je fais une soustraction!
Text_1 = Right(Text_1, vrai_long_)
Text1.Text = Text_1
End if