use strict;
my $str = 'aaa group server tacacs+ tacacs
server 172.26.60.235
server 172.24.248.209
source-interface mgmt0
aaa group server tacacs+ TACACS-GROUP
server 172.26.60.235
source-interface mgmt0
aaa group server tacacs+ TACACS-TEST1
server 172.26.60.235
server 172.24.248.209
aaa group server tacacs+ tacacs+group
source-interface mgmt0
ip tacacs source-interface mgmt0
tacacs-server host 172.26.60.235 key 7 "Foihmr3" timeout 5
tacacs-server host 172.24.248.209 key 7 "Foihmr3"
tacacs server host 172.24.248.209 key 7 "Foihmr3"
tacacs-server host 172.26.60.235 timeout 5
tacacs-server host 172.26.60.235
tacacs-server host 172.24.248.209';
my $regex = qr/(?m)(?P<head>^tacacs[\s|-]server\shost\s)(?P<ipv4>(\d+\.){3}\d+)(?P<key>\skey\s[0-9]\s\S[a-zA-Z0-9]+\S)?(?P<tail>(.*))/mp;
my $subst = '';
my $result = $str =~ s/$regex/$subst/rg;
print "The result of the substitution is' $result\n";
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