#!perl use strict; use warnings; my $infile = 'in.txt'; my $outfile = 'out.txt'; print 'enter a match : '; chomp( my $match = ); print 'enter a replacement : '; chomp( my $replace = ); open OUT,'>','regex.pl' or die "Could not create regex.pl : $!"; $match = qr(\Q$match\E); my $regex = "s/$match/$replace/gi"; print "Regex = $regex\n"; while () { s{#REGEX#}{$regex}g; s{#INFILE#}{$infile}g; s{#OUTFILE#}{$outfile}g; print OUT $_; } close OUT; print "Done\n"; system( 'perl regex.pl'); __DATA__ #!perl use strict; use warnings; my $t0 = time(); open my $in,'<','#INFILE#' or die "Could not open #INFILE# : $!"; open my $out,'>','#OUTFILE#' or die "Could not open #OUTFILE# : $!"; my $count = 0; while (<$in>){ #REGEX#; print $out $_; ++$count; } my $dur = time() - $t0; print "$count records processed #INFILE# >> #OUTFILE# in $dur seconds\n";