Beat: splice xmlstruktur

Beitrag lesen

Ich hoffe auch hier kann man mich verstehen?

Zunächst, Ich weiss nicht, wie sinnvoll es ist, ein File in einen Array zu speichern.
Weiter gilt: split() ist langsam bei perl. Ich bevorzuge eine RE.

  
my @data;  
while(<FILEHANDLE>){  
  my %temp = ();          # Wir brauchen einen neuen hash  
  #ich bearbeite jetzt jede Zeile = Record  
  # Die folgende RE hat eine Backreferenz \1 auf $1  
  while($_ =~ s#\[([^\[\]]+?)\](.*?)\[/\1\]##g ){  
    $temp{$1} = $2 || '';  
  }  
  # an dieser Stelle kannst jetzt mit $temp arbeiten  
  # ...  
  # oder wenn du es in einem Array wirklich speichern musst ???  
  # wir speichern die Referenz des Hashes im Array  
  push( @data, \%temp);  
}

nochmals die RE etwas deutlicher

  
s#\[  
    ([^\[\]]+?)  
  \]  
    (.*?)  
  \[  
    /\1  
  \]##gx  

mfg Beat

--
Woran ich arbeite:
X-Torah
><o(((°>           ><o(((°>
   <°)))o><                     ><o(((°>o