#!/usr/local/perl510/bin/perl use feature ":5.10"; use strict; use warnings; use Data::Dumper; my @data; while( ) { chomp $_; push @data, $_; } my $tmp = shift @data; my $regex = eval $tmp; print Dumper $regex; print Dumper \@data; foreach my $match_against ( @data ) { $match_against =~ $regex; print Data::Dumper->Dump( [\%+],['%+']); } __DATA__ qr{(?\QNAS-IP-Address=\E)} Nov 21 15:04:29 TACACS01 Nov 21 21:04:29 127.0.0.9 CisACS_05_TACACSAdmin dsg4te2 1 0 User-Name=XXXXXX,NAS-IP-Address=127.0.0.10,Group-Name=XXXXXX,NAS-Portname=tty1,service=shell,cmd=write memory ,priv-lvl=15,task_id=12344,