- 论坛徽章:
- 0
|
#!/usr/bin/perl
#use 5.016;
use strict;
use warnings;
my $run_config = "Standard IP access list 10
10 permit 10.10.10.0,wildcard bits 0.0.0.255
Standard IP access list 11
10 permit 10.10.10.0,wildcard bits 0.0.0.255
Standard IP access list 2301
10 permit 10.10.10.0,wildcard bits 0.0.0.255
Standard IP access list 96
10 permit ip 10.10.11.0 0.0.0.255 any
Standard IP access list 110
10 permit ip 10.10.11.0 0.0.0.255 any
Standard IP access list 2351
10 permit ip 10.10.11.0 0.0.0.255 any";
my (@st,@ex,@Standard,@Extended);
if($run_config =~ /Standard\s+IP\s+access\s+list\s+(\d+)/smg){
if($1>=1 && $1<=99) {
push @st,$1;
}
}
@Standard= sort {$b <=> $a} @st;
print $Standard[0]+1;
我想得到的结果是97,但运行总显示11,说明只匹配了第一行的10,然后加1输出的,我的程序错在哪里?怎么才能逐行匹配呢?感谢各位帮助! |
|