2008-12-09 16 views

Répondre

0

Si la chaîne est identique au format Data Dumper, elle peut être de nouveau eval dans la structure d'origine.

+0

C'est vraiment une bonne idée, si vous êtes sûr que l'entrée est valide et tout ça. Merci. Editer: L'auto-aplatissement de Perl pourrait potentiellement perdre beaucoup d'informations de l'entrée. – sundar

9

Je pense que vous pourriez construire au-dessus de Text::Balanced, qui fera le gros du travail pour vous. Cependant, vous aurez toujours besoin de construire une structure arborescente.

2

Perl 6 va avoir des installations intégrées pour aider à soutenir cela. Dans l'intervalle, Text :: Balanced (comme mentionné par Dave Rolsky) est probablement le module de choix. Notez que c'est aussi écrit par Damian Conway (comme recommandé par Bill Karwin).

4

Les expressions régulières de Perl 5.10 peuvent gérer des structures équilibrées comme ça. Voir la section (?PARNO) (?-PARNO) (?+PARNO) (?R) (?0) dans perlre.