Aide sur des regexp
#1
Bonsoir,

J'ai besoin d'aide conçernant deux regexp, la premiere sur une snotice de connexion et la deuxieme sur une snotice de gline:

Pour mon premier soucis, j'aimerai pouvoir traiter deux cas de chaine de caractère dans ma snotice de connexion :

Les connexions ssl :


Citation :*** Client connecting: fantomas (TestP@LFbn-1-2458-122.w90-78.abo.wanadoo.fr) [90.78.41.122] {clients} [secure ECSDE-RSA-AES256-DSM-SHA384]

Pour ce cas , j'ai ma regexp fonctionnel : 


Code :
\:\ (.*)\ \((.*?)@(.*?)\) \[(.*)\] \{(.*)\} \[([^ ]*)


Mais j'aimerai que dans cet même regexp, je puisse traiter aussi les connexions standard :

Citation :*** Client connecting: fantomas (TestP@LFbn-1-2458-122.w90-78.abo.wanadoo.fr) [90.78.41.122] {clients} 

Avec une connexion ssl c'est niquel mais quand j'ai une connexion standard ça me retourne que la variable $username n'existe pas.
J'ai aussi fais ma regexp pour les standards , mais j'aimerai savoir si c'est possible d'executer une regexp pour les deux cas de chaine de caractère, donc pour le standard, je me passe de $ip2 $type $secure

---

J'ai aussi un problème avec ma chaine de caractère des glines :
Quand ma chaine de caractère est (que ce soit permanent ou provisoire) :

Citation :*** Permanent G:Line added for *@197.207.149.154 on Thu Jun  8 23:21:11 2017 GMT (from Sully!Sully@testounet: test)

cela tourne niquel avec ma regexp :

Code :
(.*@.*?) on (.*?) \(from (.*?)!(.*?)@(.*?): (.*?)\)

Mais quand l'auteur du gline n'est pas sous la forme nick!ident@host mais juste "nick" ou "irc.testounet.fr" j'ai une erreur sur la variable $date n'existe pas.

J'éspère avoir été assez explicite Smile

Thanks et have fun.
  Répondre   Avertir
#2
Pour ton premier souci: as-tu réellement besoin des infos de cryptage ?
Code :
\:\ (.*)\ \((.*?)@(.*?)\) \[(.*)\] \{(.*)\}.*
Tu n'auras pas le champ secure, mais comme je ne pense pas qu'il apporte grand chose... De même que capturer le "client" final ne me semble pas bien utile.

Pour le second: tu imposes la présence du ! et du @, donc forcément ça bloque.
  Répondre   Avertir
#3
(09/06/2017, 12:11)CrazyCat a écrit : Pour ton premier souci: as-tu réellement besoin des infos de cryptage ?
Code :
\:\ (.*)\ \((.*?)@(.*?)\) \[(.*)\] \{(.*)\}.*
Tu n'auras pas le champ secure, mais comme je ne pense pas qu'il apporte grand chose... De même que capturer le "client" final ne me semble pas bien utile.

Pour le second: tu imposes la présence du ! et du @, donc forcément ça bloque.

Justement j'ai besoin de la variable secure, le client et ip2 par contre ça me sert à rien.
  Répondre   Avertir
#4
Alors explique complètement et en détail ce que tu veux. Encore une fois, ma boule de cristal est au SAV.

Et dis toi bien que tu ne pourras pas tout faire avec une regexp, tu risques d'avoir besoin d'analyser les retours.
  Répondre   Avertir
#5
C'est bon, j'ai revu mon script, je fais deux regep et dans ma condition, si le premier cas de la regexp pour le ssl n'existe pas il traite celle du standard (du coup je traite deux regexp) mais ça fonctionne.
  Répondre   Avertir


Sujets apparemment similaires...
Sujet Auteur Réponses Affichages Dernier message
  regexp protec 6 2,084 29/02/2016, 18:46
Dernier message: protec
  Souci de regexp snoopy 2 1,690 09/12/2009, 17:22
Dernier message: snoopy

Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)