Enlever du texte.. [Résolu]

Signaler
Messages postés
26
Date d'inscription
mardi 31 octobre 2000
Statut
Membre
Dernière intervention
23 janvier 2009
-
Messages postés
4822
Date d'inscription
lundi 11 novembre 2002
Statut
Membre
Dernière intervention
15 novembre 2016
-
Bonjour à tous !

Voila j'ai déjà fait quelques recherches mais je ne trouve rien qui correspond vraiment avec ce que je veux faire, pourtant je pense pas que ça doit être compliqué.
Donc j'ai une adresse sous cette forme : http://www.abcdef.com/abc.abc'abcabcd://abc.abcdef.abc/abc/abc_/ xxxx .abc&carteyyyy

Mon but serait en faite d'extraire les variables "xxxx" et "yyyy" dans 2 textbox (ces variables sont de longueurs variables !!).

La forme ( / _ . & = etc) ne varie quand a elle pas..

Je vous remercies déjà tous des vos codes / sources / infos etc :) !

++

15 réponses

Messages postés
4822
Date d'inscription
lundi 11 novembre 2002
Statut
Membre
Dernière intervention
15 novembre 2016
12
Re,

Regarde ce code ci-dessous(il y a peut-être plus court) et comme dit Jmfmarques : Annalyse et comprend

Private Sub Form_Load()


Dim iLocateDebut As Integer
Dim iLocateFin As Integer
Dim iDiff As Integer
Dim sStr As String
Dim sVar1 As String
Dim sVar2 As String


sStr = "abcd://abc.abcdef.abc/abc/abc_/VARIABLE1.abc&carte=VARIABLE2"


'* Extraire la première "variable" VARIABLE1
  iLocateDebut = InStrRev(Trim$(sStr), "/")
  iLocateFin = InStrRev(Trim$(sStr), ".")
  iDiff = iLocateFin - iLocateDebut
  sVar1 = Mid$(sStr, iLocateDebut + 1, iDiff - 1)
 
'* Extraire la première "variable" VARIABLE2
  iLocateDebut = InStrRev(Trim$(sStr), "=")
  sVar2 = Mid$(sStr, iLocateDebut + 1)
 
'*Affichage
  MsgBox "Première variable extraite : " & sVar1
  MsgBox "Deuxième variable extraite : " & sVar2
 
End Sub


A+
Exploreur

 Linux a un noyau, Windows un pépin


 
Messages postés
3172
Date d'inscription
dimanche 15 février 2004
Statut
Membre
Dernière intervention
9 avril 2017
30
Salut,

Utilise les fonctions Left$, Right$,  Mid$ ...
En prenant les répéres sur les /  . & =

__________
  Kenji
Messages postés
4822
Date d'inscription
lundi 11 novembre 2002
Statut
Membre
Dernière intervention
15 novembre 2016
12
Salut,

Voir ici, il y a un petit bout de code qui devrait te mettre sur la piste(en complément de la réponse de Charles Racaud)

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
Messages postés
26
Date d'inscription
mardi 31 octobre 2000
Statut
Membre
Dernière intervention
23 janvier 2009

Merci :) !

Par contre en left et right ca fonctionne mais dés que je passe en mid, j'ai une erreur "13" sur la ligne en gras !

chaine1 = Mid(1, txtorig.Text, 3)
txtname.Text = chaine1

Pourtant je l'ai bien déclaré en string..
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
26
Je suppose que tu as regardé la syntaxe de la fonction Mid dans ton aide en ligne (si tu ne l'as pas fait, il est temps de le faire) :

Si oui ; que signifie pour toi le 1 dans :

chaine1 = Mid(1, txtorig.Text, 3)

??
Messages postés
26
Date d'inscription
mardi 31 octobre 2000
Statut
Membre
Dernière intervention
23 janvier 2009

Pour moi cela veut dire que je récupere 1 caractere en en comptant 3 à partir du début..
Messages postés
4822
Date d'inscription
lundi 11 novembre 2002
Statut
Membre
Dernière intervention
15 novembre 2016
12
Salut,

Mid(String,Start,Lenght)

Élément, Description, ----
string, <object id="alink_5" type="application/x-oleobject" classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11"></object>Expression de chaîne dont sont extraits les caractères à renvoyer. Si l'argument string contient une valeur de type
<object id="alink_6" type="application/x-oleobject" classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11"></object>Null, Null est renvoyé., ----
start, Donnée de type
<object id="alink_7" type="application/x-oleobject" classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11"></object>Long. Position du caractère dans l'argument string qui marque le début de la partie à extraire. Si la valeur de l'argument start est supérieure au nombre de caractères contenus dans l'argument string, la fonction Mid renvoie une chaîne de longueur nulle ("")., ----
length, Facultatif. Donnée de type Variant (Long). Nombre de caractères à renvoyer. Si l'argument length est omis ou si le nombre de caractères du texte (y compris le caractère qui occupe la position start), est inférieur à la valeur de cet argument, tous les caractères à compter de la position start et jusqu'à la fin de la chaîne sont renvoyés

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
39
salut,

voir ce snippet pour l'occasion :
http://www.codyx.org/snippet_manipuler-parametres-passes-dans-url_93.aspx#1668

il te permettra d'obtenir séparément abcd://abc.abcdef.abc/abc/abc_/xxxx.abc

tu n'as plus qu'à récupérer ce qui se trouve entre le dernier /
et le .
(instrrev)

là encore codyx contient ce qu'il faut....
http://www.codyx.org/snippet_recuperer-chaine-inconnue-placee-entre-deux-chaines-connues_334.aspx#1043

au final tu as juste à faire :

Dim sValue As String
sValue = GetValueParam("http://www.abcdef.com/abc.abc'abc=abcd://abc.abcdef.abc/abc/abc_/xxxx.abc&carte=yyyy", "abc")
MsgBox MyMid(sValue, "/", ".", InStrRev(sValue, "/"))

++
PCPT  [AFCK]
<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
Messages postés
26
Date d'inscription
mardi 31 octobre 2000
Statut
Membre
Dernière intervention
23 janvier 2009

Bon alors je voulais vous dire un grand merci a tous pour votre participation :) !

Pour finir j'ai pris le code d'exploreur qui me semble le plus accessible (pour mon niveau)..

A tres bientot !

Thx :)
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
39
n'oublie pas de valider saréponse</gras>
Messages postés
26
Date d'inscription
mardi 31 octobre 2000
Statut
Membre
Dernière intervention
23 janvier 2009

B00lay inside !

Comment qu'on valide ?
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
39
et moi qui pensais l'ancienne version de CD déjà trop explicite...

euh... sur le gros bouton?
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
39
de CS* (CodeS-SourceS)

@+
Messages postés
26
Date d'inscription
mardi 31 octobre 2000
Statut
Membre
Dernière intervention
23 janvier 2009

Lol je cherchais dans les boutons "Rep, MP, etc" ;) !

Merci encore à tous
Messages postés
4822
Date d'inscription
lundi 11 novembre 2002
Statut
Membre
Dernière intervention
15 novembre 2016
12
Mes Salutations à tous,

PCPT >> Ta proposition est fonctionnelle aussi....En plus c'est Charles Racaud qui a ouvert la voie....(par rapport à moi..lol...)

A+
Exploreur

 Linux a un noyau, Windows un pépin