perlunity.de - PERL | JAVASCRIPT | PHP | MySQL | APACHE



#!/COMMUNITY

Members: 5374
davon online: 1
weitere User: 23
Click for quality!




11.02.2012 / 23:03

Community-Member werden   |   Paßwort vergessen   |   OnlineMonitor (1) Wer ist online ... OnlineMonitor starten !
     

 

Home


PERLscripts


PHPscripts


JAVAscripts


Hilfreiches


Links2www


Newscenter


Community


Interna




Community  »  Perl: Allgemeines Forum zur Themenübersicht Themensuche Themenansicht in Thread-Modus


BeitragString in mehrdimensionales Array umwandeln
Seitenanfang
Hallo Leute!

Mein Problem ist folgendes ich erzeuge aus einem mehrdimensionales Array folgenden String:

{{a0,a1,a2,{{a00,a01,a02}}},{b0,b1,b2,{{b00,b01,b02},{b10,b11,b12}}}}

Nun möchte ich diesen String aber auch wieder in ein mehrdimensionales Array zurückwandeln.

Leider übersteigt es meiner Vorstellungskraft, wie ich so etwas programmieren könnte.

Auf CPAN hab ich auch nichts gefunden, was so etwas ermöglicht.

Kann mir jemand einen Tipp geben?

Vielleicht ist es ja ganz einfach? :)

Datum: 24.11.2005-14:21

Beitragre: String in mehrdimensionales Array umwandeln
Seitenanfang
Hi,
warum machst Du es so?
Du kannst mit Data::Dumper ein Array stringifizieren und aus dem String dann wider das Array erzeugen.

Wenn Du es unbedingt selbst basteln willst, dann zeige uns bitte, wie genau das Array später aussehen soll.

So?


@array = (
'a0',
'a1',
'a2',
[a00,a01,a02],
'b0',
'b1',
...)

oder wie?

Gruss,
svenXY

Datum: 24.11.2005-15:58

Beitragre: String in mehrdimensionales Array umwandeln
Seitenanfang
Ja, genau sowas wie Data::Dumper brauche ich.

Nur wie erstelle ich aus dem Dump wieder ein Array?

In den Docs dazu kann ich nichts finden.

Danke

Datum: 24.11.2005-16:05

Beitragre: String in mehrdimensionales Array umwandeln
Seitenanfang
Hi,
so geht es:

use strict;
use Data::Dumper;

my @array = ('a1', 'a2', [qw(a11 a12 a13)], [qw(a21 a22 a23)], 'a3');

my $b = Data::Dumper->new([\@array],['stored']);
my $stored = $b->Dump;
print $stored, "\n";

my $d = eval $stored;
my @array2 = @$d;
print $array2[1];


die Variable muss aber genauso heissen, wie im Dump (hier jeweils "stored"), sonst scheint es nicht zu gehen. Komische Sache das...

Bei den perlmonks empfehlen die, das Modul storable zu benutzen.

Gruss,
svenXY

Datum: 24.11.2005-16:50

Beitragre: String in mehrdimensionales Array umwandeln
Seitenanfang
Cool, viel Dank!

Das klappt!

Datum: 24.11.2005-18:05

Beitragre: String in mehrdimensionales Array umwandeln
Seitenanfang
Data::Denter löst mein Problem!

http://search.cpan.org/~ingy/Data-Denter-0.15/Denter.pod

Danke

Datum: 24.11.2005-16:22

-






-
-