carl_mcdade
02-27-2005, 12:13 PM
this works fine:
#!/usr/bin/perl
use strict;
my $dir = './';
my $newdir = './updated_1';
my @dir = ();
opendir(DIR, $dir);
@dir = readdir(DIR);
closedir(DIR);
foreach my $file (@dir) {
if($file =~ /\.html$/ && -T $file) {
my $new_name;
open(FILE, "<$dir/$file");
while(<FILE>) {
if(/\<title\>(.*?)\<\/title\>/i) {
$new_name = $1 . '.html';
last;
}
}
close(FILE);
print "$file -> $new_name\n";
rename($dir . '/' . $file, $newdir . '/' . $new_name);
}
}
But changing it to
if(/\<h2\>(.*?)\<\/h2\>/i) {
gives no results.
What am i missing here?
#!/usr/bin/perl
use strict;
my $dir = './';
my $newdir = './updated_1';
my @dir = ();
opendir(DIR, $dir);
@dir = readdir(DIR);
closedir(DIR);
foreach my $file (@dir) {
if($file =~ /\.html$/ && -T $file) {
my $new_name;
open(FILE, "<$dir/$file");
while(<FILE>) {
if(/\<title\>(.*?)\<\/title\>/i) {
$new_name = $1 . '.html';
last;
}
}
close(FILE);
print "$file -> $new_name\n";
rename($dir . '/' . $file, $newdir . '/' . $new_name);
}
}
But changing it to
if(/\<h2\>(.*?)\<\/h2\>/i) {
gives no results.
What am i missing here?