On Feb 2, G. E. said:

>As I' ve read in "Programming Perl", double-quoted strings are subject to 
>variable interpolation of scalars and list values. Nothing else 
>interpolates.
>So the following perl code won't compile:
>
>       $st = "!--- &get_header("Users")---!";

You have quotes inside of quotes.  Try using different quotes, or using
the q// or qq// operators:

  $st = "!--- @{[ get_header('Users') ]} ---!";
  $st = qq(!--- @{[ get_header("Users") ]} ---!";

For an explanation of how @{[ ... ]} works...

  1. arrays DO get interpolated in strings
  2. [ ... ] creates an array reference
  3. @{ $array_ref } dereferences an array reference
  4. @{[ ... ]} dereferences an array reference built on-the-fly
  5. "@{[ ... ]}" expands that array as if it were "@foo"

-- 
Jeff "japhy" Pinyan      [EMAIL PROTECTED]      http://www.pobox.com/~japhy/
RPI Acacia brother #734   http://www.perlmonks.org/   http://www.cpan.org/
** Look for "Regular Expressions in Perl" published by Manning, in 2002 **
<stu> what does y/// stand for?  <tenderpuss> why, yansliterate of course.


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

Reply via email to