|
|
 |

|

 |

| Community » Perl: Allgemeines Forum |
|
String 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

|
re: 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

|
re: 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

|
re: 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

|
re: String in mehrdimensionales Array umwandeln
|
Seitenanfang |
| Cool, viel Dank! Das klappt!
Datum: 24.11.2005-18:05

|
re: 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

|
|

|

|

|
 |

|

|
|