--- Harry Putnam <[EMAIL PROTECTED]> wrote:
> Something I'm messing with today and can't get right.  I've presented
> a simplified version of what I'd like to do.  It amounts to setting
> the strings inside a s/some_re/some_rep/ type action.
> 
> I can get it to work fine if both elements are simple and don't
> involve grouping and back reference.  But grouping and back reference
> would make my script (the real one ) considerably more versatile.

You just needed an eval().
This works:

  #!/dart03/users/bin/perl -wp
  BEGIN { our($in,$out,$arg) = (shift,shift,shift||'') }
  eval "s/$in/$out/$arg";

The -p means print each line after processing; it puts the input from
STDIN into $_. The BEGIN{} block gets your arguments, and I allowed for
a third to place modifiers such as g or e, but made sure it was defined
with at least an empty string with shift||''. The eval puts the pieces
into working order. :)

Paul

__________________________________________________
Do you Yahoo!?
Yahoo! Tax Center - forms, calculators, tips, more
http://taxes.yahoo.com/

-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to