Beefy Boxes and Bandwidth Generously Provided by pair Networks
Come for the quick hacks, stay for the epiphanies.
 
PerlMonks  

Re: Search and Replace

by aquarium (Curate)
on Aug 27, 2003 at 12:41 UTC ( [id://287020]=note: print w/replies, xml ) Need Help??


in reply to Search and Replace

if particular (exact) tags match a particular file to replace the content, then you are not at all dealing with regex, but instead a simple string comparison (for the tags that is). something along the lines of the following should just about do it, if i'm understanding your question correctly.
while($line=<>) { chomp $line; if($line=~m/<REANALYZED>/) { print "$line\n"; system("cat new_content_for_reanalyzed_tag_file"); do { $line=<>; chomp $line; } until($line=~m/<\/REANALYZED>/); print "$line\n"; } elsif($line=~m/<ANOTHERTAG>/) { print "$line\n"; system("cat another_file_for_this_tag"); . . . etc. } else { print "$line\n"; }

I'm sure you can make that much simpler by using some perlisms and make some subs out of re-usable code, but that's the main jist of it. Use redirection to feed this program with your input file, and redirect standard output as you need. E.g. perl this_script.pl <orig_file >new_file

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://287020]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others taking refuge in the Monastery: (8)
As of 2024-04-18 06:03 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found