use strict; use warnings; my $text = join '', ; my %replacements = ( 'Romeo' => 'CountZero', 'Juliet' => 'Elisabeth', 'Rom.' => 'CountZero', 'Jul.' => 'Elisabeth', 'Abram' => 'Igor', 'Abr.' => 'Igor', ); $text =~s/(Romeo|Juliet|Rom\.|Jul\.|Abram|Abr\.)/$replacements{$1}/gi; print $text; __DATA__ (follows the full Project Gutenberg e-text of Shakespeare's Romeo and Juliet; found at http://www.gutenberg.org/dirs/etext97/1ws1610.txt)