Beefy Boxes and Bandwidth Generously Provided by pair Networks
No such thing as a small change
 
PerlMonks  

Re^3: Regular Expressions question

by NetWallah (Abbot)
on Oct 29, 2012 at 22:14 UTC ( #1001429=note: print w/replies, xml ) Need Help??


in reply to Re^2: Regular Expressions question
in thread Regular Expressions question

Here is the equivalent code, done using OO:
use warnings; use strict; my $host = ""; my (@T1_list, $current_T1); my @check = grep { chomp $_; $_ } <DATA>; for (@check) { if (m{([0-9]/[0-9]/[0-9])$}) { push @T1_list, $current_T1 = T1->new (INTERFACE=>$1) } elsif (m{pri-group}) { $current_T1->isPRI (1); } } if ( @T1_list ) { print "T1 Controller Summary:\n\n"; print scalar(@T1_list) . " total T1 interfaces\n"; $_->PrintName for @T1_list; print scalar(grep $_->isPRI(), @T1_list) ." total voice PRI(s)\n"; $_->PrintName for (grep $_->isPRI(), @T1_list); } else { print "No T1 interfaces found"; } { package T1; sub new{ my ($class, %att) = @_; return bless ( {PRI=>0, INTERFACE=>'', %att}, $class); } sub isPRI{ my ($self, $val) = @_; defined $val or return $self->{PRI}; $self->{PRI} = $val; } sub PrintName{ print $_[0]->{INTERFACE}, "\n"; } 1; } # End of T1

             "By three methods we may learn wisdom: First, by reflection, which is noblest; Second, by imitation, which is easiest; and third by experience, which is the bitterest."           -Confucius

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1001429]
help
Chatterbox?
[Corion]: Meh, first round of escalations for me not wanting to fix in production what a project has mismanaged. Now another project, which eats up all the resources until end of this year wants to take that task and put it on my list of things as well.

How do I use this? | Other CB clients
Other Users?
Others avoiding work at the Monastery: (8)
As of 2017-08-17 12:18 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    Who is your favorite scientist and why?



























    Results (287 votes). Check out past polls.

    Notices?