#! perl -slw use strict; # Set up some test data. my $text = 'The quick brown fox jumps over the lazy dog'; my @tests = map{ my $t = $text; substr($t, rand( length $text ), 0 ) = $_; $t; } map{ substr 'vacation.msg', $_ } 0 ..6; print "Before\n"; print for @tests; # s[(?:(?:(?:(?:(?:(?:v?a)?c)?a)?t)?i)?o)?n.msg][] for @tests; print "\nAfter\n"; print for @tests; __END__ P:\>junk Before The quick brown fox jumps ovvacation.msger the lazy dog The quick brown fox jumps oacation.msgver the lazy dog The quick brocation.msgwn fox jumps over the lazy dog The quick brown fox jumpsation.msg over the lazy dog The quick brown fox jumps over the lation.msgzy dog Tion.msghe quick brown fox jumps over the lazy dog The quick brown fox jumps over the lazy on.msgdog After The quick brown fox jumps over the lazy dog The quick brown fox jumps over the lazy dog The quick brown fox jumps over the lazy dog The quick brown fox jumps over the lazy dog The quick brown fox jumps over the lzy dog The quick brown fox jumps over the lazy dog The quick brown fox jumps over the lazy dog