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

Re^4: character replace

by sandy1028 (Sexton)
on Jun 02, 2009 at 12:42 UTC ( [id://767577] : note . print w/replies, xml ) Need Help??

in reply to Re^3: character replace
in thread character replace

#!/usr/bin/perl open FH,'ent.txt'; @data=<FH>; $text='&bush&amp;'; foreach $dat(@data){ $text =~ s/&/&amp;/g; print $text; }
ent.txt file contains all the entities. This substitutes all the & with &

Replies are listed 'Best First'.
Re^5: character replace
by Corion (Patriarch) on Jun 02, 2009 at 12:47 UTC

    Maybe it would be a good exercise to go through the code you've posted and to explain what every line is supposed to do. Especially the intention of these two parts is important:

    open FH,'ent.txt'; @data=<FH>;

    What does @data contain? Is data a good name for that?

    foreach $dat(@data){ $text =~ s/&/&amp;/g;
    1. Why are you iterating over @data?
    2. What does change in the loop code for each iteration?
    3. How does the code in the loop reflect the rules you set up for when to replace & with &amp;?

    What is the output you see, and what is the output you expect. How does the output you expect relate to the rules you've set up for when to replace &?

    In answering these questions to yourself, you will find the steps you need to take to modify your program from a collection of lines into something that does what you want.