April wrote: > sprintf( "%s%$Fmt%s", ("%$Fmt=|", $TestStr, "|")) > > This is in Perl for Dummies, 4th ed, p160. > > I'm trying to understand this ... > > the first part, "%s%$Fmt%s", my understanding is the format part, > which specifies the formats for the second part, thelist part, ("% > $Fmt=|", $TestStr, "|"): %s for "%$Fmt=|", %$Fmt for $TestStr, and %s > for "|", respectively. Is this correct? > > Then what is %$Fmt, it seems a % for format and then a variable $Fmt, > the book did not mention any format string like this ... > > Anyone can shed some light? Thanks!
Hi April The value of $Fmt will be interpolated into the double-quoted sting before it is used as a format. It needs to be one of the single-character format conversion. If you're not clear what I mean then try running this piece of code. for my $Fmt ('s', 'd') { print "%s%$Fmt%s", "\n"; } HTH, Rob -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] http://learn.perl.org/