Leser: 29
1 2 3 4 5 6 7 8 9 10 11 12
my $ausgabe = sub1( text => "die option $_ ist vorhanden\n" ); sub sub1 { my %para = @_; my $ausgabe; # @option enthält n Einzelwerte foreach (@option) { $ausgabe .= $para{text}; } return $ausgabe; }
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
sub sub1 { my %para = %{ shift @_ }; my @option = @_; my $ausgabe; # @option enthält n Einzelwerte foreach (@option) { my $s = $para{text}; $s =~ s/\\n/\n/g; $s =~ s/\[\$_\]/$_/g; $ausgabe .= $s; } return $ausgabe; } my $ausgabe = sub1( { text => 'die option [$_] ist vorhanden\n' }, qw( Option1 Option2) ); print $ausgabe;
2011-01-26T13:29:19 chmod777ich musste übrigens bei "... die option [\$_] ist vo ..." das $ mit '\' maskieren
1 2 3 4 5 6 7 8 9 10 11 12
my $ausgabe = sub1( text => "die option %s ist vorhanden\n" ); sub sub1 { my %para = @_; my $ausgabe; # @option enthält n Einzelwerte foreach my $o (@option) { $ausgabe .= sprintf($para{text}, $o); } return $ausgabe; }
1 2 3 4
sub sub1 { my %para = @_; return join '', map { sprintf($para{text}, $_) } @option; }
sub sub1{sprintf{@_}->{text}x@option,@option}