Jorge Goncalvez wrote: > Hi, I made a parsing of a file which contains : > this: > Adresse IP. . . . . . . . . : 155.132.48.23 > > like this to obtain the Ip adress. > > if ($_ =~/Adresse IP/) { > $_ =~ s/.+://; > > $Subnet=$_; > > push @IPREAL, $_; > > $_=~ s/(\d+\.\d+\.\d+)\.\d+/$1.0/; > > push @IP, $_; > > It works but my problem is that parsing works only in french files, but I wanted > to make it working in another language like for exemple English. > I have > IP Address. . . . . . . . . : 155.132.114.77 > > How can I improve my regexp if ($_ =~/Adresse IP/) to check the IP address > indepentmently of the language (I know that the searched string contains always > "IP" )
Something along those lines might work: #!/usr/bin/perl -w use strict; my (@IPREAL, @IP); while (<DATA>){ if ( /.*?IP.*?(?:\. )+:\s([0-9.]+)/ ){ my $ip = $1; push @IPREAL, $ip; $ip =~ s/(\d+\.\d+\.\d+)\.\d+/$1.0/; push @IP, $ip; } } print "IPREAL: @IPREAL\n"; print "IP: @IP\n"; __DATA__ Adresse IP. . . . . . . . . : 155.132.48.23 IP Address. . . . . . . . . : 155.135.48.23 Whatever language IP. . . . : 134.43.12.22 __END__ -- briac A pair of songbirds nest in the branches of a she-oak tree. A lark nests. -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]