Extraire IP du Header

Signaler
Messages postés
2
Date d'inscription
samedi 16 septembre 2006
Statut
Membre
Dernière intervention
16 septembre 2006
-
Messages postés
883
Date d'inscription
vendredi 3 novembre 2000
Statut
Membre
Dernière intervention
3 mars 2009
-
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

Messages postés
883
Date d'inscription
vendredi 3 novembre 2000
Statut
Membre
Dernière intervention
3 mars 2009
7
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
Messages postés
883
Date d'inscription
vendredi 3 novembre 2000
Statut
Membre
Dernière intervention
3 mars 2009
7
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.
Messages postés
2
Date d'inscription
samedi 16 septembre 2006
Statut
Membre
Dernière intervention
16 septembre 2006

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
Messages postés
883
Date d'inscription
vendredi 3 novembre 2000
Statut
Membre
Dernière intervention
3 mars 2009
7
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.