use strict;
my $str = 'E1 0/2/14 down down
E1 0/2/15 down down
GE0/0/0 down down
GE0/3/0(10G) up up Conexao ao Anel AGG RMAGSRM-STRM06-01 GigabitEthernet0/4/0
GE0/3/1(10G) down down
GE0/4/0(10G) up up Conexao ao Anel AGG RMCOSRM0101 GigabitEthernet0/3/0
GE0/4/1(10G) down down
GE0/7/0 up up Conexao ao Anel ACC RMACSRM-STRM10-01 GigabitEthernet0/3/2
GE0/7/1 down down
GE0/7/2 down down
GE0/7/3 down down
GE0/7/4 down down
GE0/7/5 down down
GE0/7/6 down down
GE0/7/7 down down
GE0/8/0 up up Conexao ao Anel ACC RMACSRM-STRM04-01 GigabitEthernet0/3/3
GE0/8/1 down down
GE0/8/2 down down
GE0/8/3 down down
GE0/8/4 down down
GE0/8/5 down down
GE0/8/6 up down
GE0/8/6.6 up up Conexao ao Servico 3G-<SRMSRMCPL113657>-<PA1808>
GE0/8/7 down down
Loop0 up up(s) Loopback Gerencia
Loop2147483647 up up(s) DCN loopback interface
NULL0 up up(s)
S0/2/0:0 up up
S0/5/0/1:1 down down
S0/5/0/17:1 down down
S0/5/0/33:1 down down
S0/5/0/49:1 down down
Mg0/RSP0/CPU0/1 admin-down admin-down
Te0/2/0/0 up up Conexao ao RMCORJO0102 GE5/0/0
Te0/2/0/1 up up Conexao ao RTOCRJO0101 [Te0/1/0/6]
Te0/2/0/2 up up Conexao RMCORJO0101 Te0/0/0/2
Te0/2/0/3 up up Conexao ao LTE-TIM - PTN -ANEL01
Te0/2/0/3.2001 up up CONEXAO ^`eNB
Te0/2/0/3.2002 up up CONEXAO - eNB
Te0/2/0/3.2003 up up Conexao ao - eNB
Te0/2/0/3.2004 up up Conexao ao - eNB
Te0/2/0/3.2005 up up Conexao ao - eNB
Te0/2/0/3.2006 up up Conexao ao - eNB
Gi0/3/1/5 up up "Conexao ao RTISRJO0301 [Gig0/0/0] "
Gi0/3/1/6 up up Conexao ao IPX COMFONE - IPX SERVICES - CPE LOCAL - 120 Mbps
Gi0/3/1/6.201 up up Conexao ao IPX COMFONE - SIGNALING/DIAMETER - 1 Mbps
Gi0/3/1/6.202 up up Conexao ao IPX COMFONE - SIGNALING/SS7 - 2 Mbps
Gi0/3/1/6.203 up up Conexao ao IPX COMFONE - 2/3/4G ROAMING/GRX - 60 Mbps
Gi0/3/1/7 up up Conexao ao OI - Link LAB TIM/OI - ID OI RJOSL8320483
Gi0/3/1/7.4000 up up RAN Sharing LTE OI - TIM [1000Mbps]
Gi0/3/1/8 up up "Conexao ao SMS CLARO"
Gi0/3/1/8.252 up up PEERING Conexao ao SMS CLARO - Trail RJORJOCPL062543 Accid 57807
Gi0/3/1/9 admin-down admin-down
Gi0/3/1/10 admin-down admin-down
';
my $regex = qr/^[a-z]+[0-9/\(\)G]+\s+.+\n/mip;
if ( $str =~ /$regex/g ) {
print "Whole match is ${^MATCH} and its start/end positions can be obtained via \$-[0] and \$+[0]\n";
# print "Capture Group 1 is $1 and its start/end positions can be obtained via \$-[1] and \$+[1]\n";
# print "Capture Group 2 is $2 ... and so on\n";
}
# ${^POSTMATCH} and ${^PREMATCH} are also available with the use of '/p'
# Named capture groups can be called via $+{name}
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Perl, please visit: http://perldoc.perl.org/perlre.html