Hi PerlMonks,
I am a newbie in perl and
I would like seek helpon how to parse multiple xml files from a directory using a single perl script.
Ex. If I execute the "Perl Clean.pl" in the cmd.
All xml files in the same directory will remove the unwanted tags, without affecting its filename or should I say it will retain its filename or its better if I also send it on another directory.
Below is my code:
Many Thanks!
#!/xce/bin/perl -w
use warnings;
opendir(DIR, ".") or die "cannot open directory";
@docs = grep(/\.xml$/,readdir(DIR));
foreach $file (@docs) {
open (INFILE, "$file") or die "could not open $file\n";
# Process error data to rectify the error records in massaged data
while (<INFILE>) {
while(/<p>\s*<text>([^\000]*?)<\/text>\s*<\/p>/){
$temp=$1;
$temp=~s/<p[^\000]*?\/>//gmi;
$temp=~s/<br\/>//gmi;
s/<p>\s*<text>[^\000]*?<\/text>\s*<\/p>/<P>\n<TEXT>$temp<\/TEXT>\n
+<\/P>/;
}
s/(<\/?)TEXT/$1text/gm;
s/(<\/?)P/$1p/gm;
print $_; # Output the contents of $_ to
# output file
}
#Close the infile.
close(INFILE);
}