Beefy Boxes and Bandwidth Generously Provided by pair Networks
Your skill will accomplish
what the force of many cannot

Re: Problem with PPI HereDoc's

by Khen1950fx (Canon)
on Nov 21, 2011 at 03:29 UTC ( #939129=note: print w/ replies, xml ) Need Help??

in reply to Problem with PPI HereDoc's

You need to create a new PPI::Document object for each here-doc. I say that because I tried calling two here-docs, but PPI would only give me one. Also, I couldn't replicate your output. How did you replace 'Something' with 'else'? I would modify the docs like this:

#!/usr/bin/perl use strict; use warnings; use PPI; use PPI::Dumper; my $data; ($data = <<'ENDOFSQL') =~ s/Something/else/; Something ENDOFSQL my($Document) = PPI::Document->new(\$data); my $Dumper = PPI::Dumper->new($Document); $Dumper->print;

Comment on Re: Problem with PPI HereDoc's
Download Code
Re^2: Problem with PPI HereDoc's
by clueless newbie (Hermit) on Nov 21, 2011 at 12:13 UTC

    Hi, Khen1950fx,

    Thank you for replying.

    I think

    push @NewHereDoc_a,PPI::Document->new(\( $HereDoc_o->content() ."\n" ."/* $Comment_S\n" # Comment .join('',$HereDoc_o->heredoc()) # ... origina +l commented out ."*/\n" # .$NewText_s # ... replace +ment ."\n" .$HereDoc_o->terminator() ));

    should create a new PPI::Document object for each of the HereDocs that I want to update.

Log In?

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

How do I use this? | Other CB clients
Other Users?
Others drinking their drinks and smoking their pipes about the Monastery: (9)
As of 2015-03-03 11:31 GMT
Find Nodes?
    Voting Booth?

    When putting a smiley right before a closing parenthesis, do you:

    Results (70 votes), past polls