Please use <CODE> ... </CODE> to surround any code or other file contents you post, as that will make it more readable and responses more likely.
This is what you posted :
The input is for example: http://www.ad.nl/actueel/ZZZK51QP4DC.html&May occure often & The output should be: url1=http://www.ad.nl/actueel/ZZZK51QP4DC.htmlitem1=May occure often And this for more lines. So the number must increase for the next line. $vervang =~ s/http/url1=http/; $vervang =~ s/&/item=/g; print $vervang; @buffer = $vervang; print @buffer; foreach $teller(0..15) { $telop{"http"} = 'url' . ($teller+1) . '=http'; print $telop; } foreach $vervang(@buffer) { $vervang =~ s/& http/$telop/gi; print $vervang; }
Here is my try at it (completely untested, sorry) :
But the meaning of the lines following this code is completely unclear to me. What do you want to accomplish by usinguse strict; # always do this my $line; # this will contain the current line read # from stdin. We could also have used $_, # but using $line is less cryptic my $counter = 1; # This is the counter of the urlXX= string while (<>) { # while we get input, we read it $line = $_; # Munge the current line into what we want $line =~ s!^http://!url$counter=http://!i; # BastardOperator made a post below that got me thinking. # Maybe you want it this way : $line =~ s!&!item=!g; # but maybe you want item1=bla item2=ble etc. # This line will do the second : my $itemcount = 1; while ($line =~ s/&/$itemcount++/e) { # the action is in the while statement } # and print it print $line; # and increment our counter $counter++; };
? @buffer is an array, and $vervang is the munged line.@buffer = $vervang;
In reply to Re: need help with search and replace
by Corion
in thread need help with search and replace
by BlueLady
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |