Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
820 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  [VB6] recuperer une chaine dans une chaine...

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[VB6] recuperer une chaine dans une chaine...

n°1286565
Mevag
Posté le 18-01-2006 à 13:58:50  profilanswer
 

je sait le sujet est pas tres clair mais je vois pas comment mieu l'expliquer...
 
exemple :  
 
j'ai la chaine suivante en html : <link href="http://i.blabla.com/icons/favicon.png" rel="shortcut icon"/>
 
et je doit arriver a recuperer la chaine  
 
favicon.png
 
j'arrive a reperer la ligne du fichier text qui contient se qui m'interesse mais pas a l'isoler
 
le but étant d'avoir un fichier texte contenant par exemple :
 
favicon.png
blabla.png
xyz.png
kujhkjh.png
 
voila, si vous avez compris et que vous avez une idée, merci d'avance  :)

mood
Publicité
Posté le 18-01-2006 à 13:58:50  profilanswer
 

n°1286579
pc75
Posté le 18-01-2006 à 14:12:14  profilanswer
 

Bonjour,
 
Un début de réponse :
 
Les fonctions Instr() et InstrRev() renvoient la position d'une sous-chaine dans une chaine.
 
La fonction Mid() permet d'extraire une sous-chaine d'une chaine.

n°1286878
ladislas26​09
Posté le 18-01-2006 à 18:18:07  profilanswer
 

salut,
 
Voici 4 fonctions qui devraient t'aider à isoler une sou-chaine:
 
Function BeforeFirst(Texte As String, Séparateur As String, Optional Différenciation As Boolean = False)
Dim NbAvant
chaineplus = Len(Séparateur)
If Différenciation = False Then
    comparer = 1
Else: comparer = 0
End If
NbAvant = InStr(1, Texte, Séparateur, comparer)
 
If NbAvant = 0 Then
    BeforeFirst = Texte
Else: BeforeFirst = Left(Texte, NbAvant - 1)
End If
End Function
 
Function AfterFirst(Texte As String, Séparateur As String, Optional Différenciation As Boolean = False)
Dim NbAvant
chaineplus = Len(Séparateur)
If Différenciation = False Then
    comparer = 1
Else: comparer = 0
End If
NbAvant = InStr(1, Texte, Séparateur, comparer)
 
If NbAvant = 0 Then
    AfterFirst = Texte
Else: AfterFirst = Right(Texte, Len(Texte) - (NbAvant + chaineplus - 1))
End If
End Function
 
Function BeforeLast(Texte As String, Séparateur As String, Optional Différenciation As Boolean = False)
 
If Différenciation = False Then
    comparer = 1
Else: comparer = 0
End If
For compteur = Len(Texte) To 1 Step -1
    If InStr(compteur, Texte, Séparateur, comparer) <> 0 Then GoTo Trouvé
Next
 
compteur = Len(Texte) + 1
 
Trouvé:
BeforeLast = Left(Texte, compteur - 1)
 
End Function
 
Function AfterLast(Texte As String, Séparateur As String, Optional Différenciation As Boolean = False)
chaineplus = Len(Séparateur)
If Différenciation = False Then
    comparer = 1
Else: comparer = 0
End If
 
For compteur = Len(Texte) To 1 Step -1
    If InStr(compteur, Texte, Séparateur, comparer) <> 0 Then GoTo Trouvé
Next
 
compteur = Len(Texte) + 1
 
Trouvé:
AfterLast = Right(Texte, Len(Texte) - (compteur - 1 + chaineplus))
 
End Function

n°1286880
luminilux
Posté le 18-01-2006 à 18:18:48  profilanswer
 

Utilise Instr pour détecter « .png »
Ensuite tu remonte pour trouver le « / »
Envisage l'utilisation de « StrReverse », ça peut aider grandement


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  [VB6] recuperer une chaine dans une chaine...

 

Sujets relatifs
Transformation de code HTML en chaineFormatage d'une chaine XML en arbre
nombre de lignes d'un textbox en VB6Re comment creeer un cd lisible sur pc/ chaine hifi/ lecteur dvd
comment creeer un cd lisible sur pc/ chaine hifi/ lecteur dvdNb caracteres dans une chaine en Fortran
découpage de chaineVB6 visual 2005
[resolu] recuperer nom utilisateur en vbaexplode et position dans une chaine
Plus de sujets relatifs à : [VB6] recuperer une chaine dans une chaine...


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR