Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Hash-Literal dynamischer Länge?

1 view
Skip to first unread message

Tim Landscheidt

unread,
Dec 18, 2009, 7:27:36 PM12/18/09
to
Hallo,

gegeben sei:

| use URI;

| [...]

| my $down_url = new URI ('http://' . $language . '.wikipedia.org/w/index.php');
| my %p = ('title' => $downlemma, 'action' => 'raw');
| $p {'oldid'} = $oldid if (defined ($oldid) && $oldid =~ /^\d+$/);
| $down_url->query_form (\%p);

Kann man das Hash-Literal auch dynamisch erweitern, ohne auf
die "Hilfsvariable" %p angewiesen zu sein, i. e. etwas � la:

| $down_url->query_form ({'title' => $downlemma, 'action' => 'raw',
| (defined ($oldid) && $oldid =~ /^\d+$/ ? 'oldid' => $oldid)});

oder ist das nicht m�glich?

TIA,
Tim

Moritz Lenz

unread,
Dec 19, 2009, 3:59:24 AM12/19/09
to Tim Landscheidt
Hallo,

Tim Landscheidt wrote:
> Kann man das Hash-Literal auch dynamisch erweitern, ohne auf
> die "Hilfsvariable" %p angewiesen zu sein, i. e. etwas � la:
>
> | $down_url->query_form ({'title' => $downlemma, 'action' => 'raw',
> | (defined ($oldid) && $oldid =~ /^\d+$/ ? 'oldid' => $oldid)});
>
> oder ist das nicht m�glich?

Doch, aber zu dem '?' geh�rt noch ein ':'

defined ($oldid) && $oldid =~ /^\d+$/ ? ('oldid' => $oldid) : ()

HTH,
Moritz

--
Moritz Lenz
http://perl-6.de/ http://moritz.faui2k3.org/

Tim Landscheidt

unread,
Dec 20, 2009, 8:11:06 PM12/20/09
to
Moritz Lenz <mor...@faui2k3.org> wrote:

>> Kann man das Hash-Literal auch dynamisch erweitern, ohne auf
>> die "Hilfsvariable" %p angewiesen zu sein, i. e. etwas � la:

>> | $down_url->query_form ({'title' => $downlemma, 'action' => 'raw',
>> | (defined ($oldid) && $oldid =~ /^\d+$/ ? 'oldid' => $oldid)});

>> oder ist das nicht m�glich?

> Doch, aber zu dem '?' geh�rt noch ein ':'

> defined ($oldid) && $oldid =~ /^\d+$/ ? ('oldid' => $oldid) : ()

... und es h�tte sich aus eigentlich aus perldata erschlie-
�en lassen k�nnen; aber ich war wahrscheinlich zu sehr auf
"Element" statt auf "(Unter-) Liste" fixiert.

Danke,
Tim

0 new messages