Ok, maybe I'm a sucker for a sob story. This only took me 5 minutes and it is not complete, but does most of what you asked for (even if it is not what you need). It should give you enough hints and pointers to get moving and RTFM: use strict;
use warnings;
# We should end up with Flameless-Candles.htm Classic-Cars.htm Apricot
+-Jelly.htm
# Where string ABC123 has been replaced with Flameless Candles in the
+Flameless-Candles.htm file and ABC123 has been replaced with Classic
+Cars in the Classic-Cars.htm file etc.
while (my $phrase = <DATA>) {
chomp ($phrase);
my $filename = "$phrase.htm";
$filename =~ s/\s+/-/g;
if (open(my $infh, '<', $filename)) {
if (open(my $outfh, '>', "$filename.out")) {
while (<$infh>) {
s/ABC123/$phrase/g;
print $outfh $_
}
close $infh;
close $outfh;
rename "$filename.out",$filename or
warn "Unable to rename $filename.out: $!"
}
else {
warn "Unable to open $filename.out: $!";
close $infh;
}
}
else {
warn "Unable to open $filename: $!";
}
}
__DATA__
Flameless Candles
Classic Cars
Apricot Jelly
|