Extraire IP du Header

cs_kkevin Messages postés 2 Date d'inscription samedi 16 septembre 2006 Statut Membre Dernière intervention 16 septembre 2006 - 16 sept. 2006 à 15:37
Julien237 Messages postés 883 Date d'inscription vendredi 3 novembre 2000 Statut Membre Dernière intervention 3 mars 2009 - 16 sept. 2006 à 20:28
Bonjour a tous,

Je suis a la recherche d'un code pour extraire l'adresse IP du header d'un mail
J'ai créer une variable qui me récupère le header du mail, mais j'aimerai pouvoir en extraire uniquement l'adresse IP qui se trouve entre "([" et "])"

Je pense que l'on peut le faire avec mid mais j'ai peu de notion du mid

Quelqu'un pourrait-il m'aider ?

Merci Kevin

4 réponses

Julien237 Messages postés 883 Date d'inscription vendredi 3 novembre 2000 Statut Membre Dernière intervention 3 mars 2009 7
16 sept. 2006 à 16:41
Salut,
Si ce sont les seuls "[" et "]" du header c'est très simple :

dim Header as string = ....
dim Debut as integer, Fin as integer,Ip as string

Debut = InStr(Header, "[") 'Renvoie la position de la première occurence de "[" dans Header

Fin = InStr(Header, "]") 'Idem

Ip = Mid(Header, Debut, Fin - Debut)

Si ce ne sont pas les seuls "[" et "]", alors je te conseille d'utiliser les regularsExpressions. Je te la fais dans 10 minutes si tu veux (ca doit pas être bien compliqué...)...

Julien
0
Julien237 Messages postés 883 Date d'inscription vendredi 3 novembre 2000 Statut Membre Dernière intervention 3 mars 2009 7
16 sept. 2006 à 16:50
Salut,
Voilà je viens d'en faire une qui devrait convenir, tu dois ajouter une référence pour les regularExpressions en VB6, mais pour te dire plus fais appel à un autre membre, ca fait longtemps que je suis sur .Net, désolé...
La voici :
"\[[0-2]?[0-9]?[1-9].[0-2]?[0-9]?[1-9].[0-2]?[0-9]?[1-9].[0-2]?[0-9]?[1-9]\]"

En .Net tu ferais (je te le dis parce que c'est sûrement identique en VB6)

Ip = Regex.Match(Header, "\[[0-2]?[0-9]?[1-9].[0-2]?[0-9]?[1-9].[0-2]?[0-9]?[1-9].[0-2]?[0-9]?[1-9]\]").Value

Julien.
0
cs_kkevin Messages postés 2 Date d'inscription samedi 16 septembre 2006 Statut Membre Dernière intervention 16 septembre 2006
16 sept. 2006 à 18:45
Bonjour Julien,


Un Grand merci sa fonctionne merveille.


Juste une question, il me récupère bien l'ip entre ([ et cela ]) mails me l'affiche comme cela [000.000.000.000 il y a t-il un moyen de supprimer [ avant l'ip ?


Kevin
0
Julien237 Messages postés 883 Date d'inscription vendredi 3 novembre 2000 Statut Membre Dernière intervention 3 mars 2009 7
16 sept. 2006 à 20:28
A ton avis... As-tu regardé la doc de Mid ?
Le premier paramètre est la chaine contenant la chaine à récupérer
Le second paramètre est la position du premier caractère de la chaine à récupérer
Le troisième paramètre est la longueur de la chaine à récupérer

Donc tu change
Ip = Mid(Header, Debut, Fin - Debut)

En
Ip = Mid(Header, Debut + 1, Fin - Debut - 1)


Julien.
0
Rejoignez-nous