Se connecter avec
S'enregistrer | Connectez-vous

You are not allowed to do this.

[perl] extraire chaine de caractère

Dernière réponse : dans Programmation

bonjour,
je cherche une commande qui me transforme ça:

  1. IF-MIB::ifInOctets.10101 = Counter32: 2683540892
  2.  
  3. IF-MIB::ifInOctets.10102 = Counter32: 3050330850
  4.  
  5. IF-MIB::ifInOctets.10103 = Counter32: 3040619711
  6.  
  7. IF-MIB::ifInOctets.10105 = Counter32: 4141631423
  8.  
  9. IF-MIB::ifInOctets.10106 = Counter32: 858542634


en ça:

  1. 2683540892
  2. 3050330850
  3. 3040619711
  4. 4141631423
  5. 858542634


Merci de vos réponses

Autres pages sur : perl extraire chaine caractere

Lassé par la pub ? Créez un compte

oui, mais tu met ce caractere dans une variable, puis tu rajoute un autre caractere.
$string = "test";
$chop = chop($string);
$var = $var + $chop;
, enfin quelque chose dans le style avec une boucle (je n'ai plus la syntaxe en tête je vais chercher ça.

Et avec des RegExp tout simplement ?

un truc du genre ($mes_lignes_de_log contient les lignes IF-MIB...)
  1. my @lines = split("\n",$mes_lignes_de_log);
  2. foreach my $line (@lines){
  3. if($line =~ m/^IF-MIB::ifInOctets.*\d{5} = Counter32: \d/){ #On verifie que la ligne commence bien par la bonne chose
  4. $line =~ /(\d*)$/;
  5. print $1."\n";
  6. }
  7. }


P.S.: je viens de remarquer l'âge de la question, tant pis, ça pourra être utile à d'autres !
Lassé par la pub ? Créez un compte
Tom's guide dans le monde