cs_veler
Messages postés723Date d'inscriptiondimanche 26 novembre 2006StatutMembreDernière intervention23 janvier 2013
-
6 nov. 2007 à 10:09
cs_veler
Messages postés723Date d'inscriptiondimanche 26 novembre 2006StatutMembreDernière intervention23 janvier 2013
-
6 nov. 2007 à 11:25
Bonjours,
dans un fichier ou textbox, j'ai une ligne dans lequel j'ai un texte entre guillmet. Comment faire pour récupérer le texte qui est entre ces guillmet? J'y arrive pas.
mstarsup5
Messages postés527Date d'inscriptionlundi 15 octobre 2007StatutMembreDernière intervention10 octobre 20131 6 nov. 2007 à 11:07
veler, une fois que t'as la première position, avec substring garde juste la chaine qui commence du premier " jusqu'à la fin.
Ensuite, calcule la 2ème position avec indexof, et enfin, extraits du début de ta seconde chaine jusqu'à ton 2ème "
cs_casy
Messages postés7741Date d'inscriptionmercredi 1 septembre 2004StatutMembreDernière intervention24 septembre 201440 6 nov. 2007 à 11:18
Testé et approuvé :
pos1 = ligne.IndexOf(""""c)
pos2 = ligne.IndexOf(""""c, pos1 + 1)
If (pos1 > 0) And (pos2 > 1) Then
MessageBox.Show(ligne.Substring(pos1, pos2 - pos1))
End If
mstarsup5
Messages postés527Date d'inscriptionlundi 15 octobre 2007StatutMembreDernière intervention10 octobre 20131 6 nov. 2007 à 11:00
Bizarre, ça marche pas substring et indexof chez moi (j'utilise vb6, c'est peut etre pour ça).
Si ça marche pas, utilise un mid$ à la place du substring:
mid$ (Tachaine, indexdepart, longueur)
et un instr à la place du indexof:
instr (Tachaine, "x") , "x" étant le caractère dont tu recherches la position.
Je vais vérifier quand même encore pour le substring et le indexof, ça me chagrine que ça ne marche pas :x
cs_veler
Messages postés723Date d'inscriptiondimanche 26 novembre 2006StatutMembreDernière intervention23 janvier 20132 6 nov. 2007 à 11:12
Au total, si je fais ça:
Position = ligne.IndexOf("""")
chaine = Microsoft.VisualBasic.Left(ligne, Position)
Position2 = chaine.IndexOf("""")
Dim m As String = Microsoft.VisualBasic.Mid(ligne, Position, Position2)
MsgBox(m)
ça me dit que Position2 ne doit pas être inférieur ou égale à 0 (normale, ici, il fait -1)
Dim m As String = ligne.Substring(Position, Position2)
MsgBox(m)
ça fonctionne, allé, j'accepte quand même t'as réponse Casy, car elle fonctionne aussi, et puis mstarsup5 aussi, tu m'as bien aidée aussi.
merci de votre aide