13.07.2015 Views

Perl 语言编程 - Linux教程

Perl 语言编程 - Linux教程

Perl 语言编程 - Linux教程

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

members => [{ name => "homer", role => "husband", age => 34, },{ name => "marge", role => "wife", age => 37, },{ name => "bart", role => "kid", age => 11, },],},);9.6.3 复 杂 记 录 散 列 的 生 成因 为 <strong>Perl</strong> 分 析 复 杂 数 据 结 构 相 当 不 错 , 因 此 你 可 以 把 你 的 数 据 声 明 作 为 <strong>Perl</strong> 代 码 放 到 一个 独 立 的 文 件 里 , 然 后 用 do 或 者 require 等 内 建 的 函 数 把 它 们 装 载 进 来 。 另 外 一 种 流 行的 方 法 是 使 用 CPAN 模 块 ( 比 如 XML::Parser) 装 载 那 些 用 其 他 语 言 ( 比 如 XML) 表 示的 任 意 数 据 结 构 。你 可 以 分 片 地 制 作 数 据 结 构 :$rec = {};$rec->{series} = "flintstones";$rec->{nights} = [ find_days()];或 者 从 文 件 里 把 它 们 读 取 进 来 ( 在 这 里 , 我 们 假 设 文 件 的 格 式 是 field=value 语 法 ):@members = ();while () {%fields = split /[\s=]+/;push @members, {%fields};}$rec->{members} = [ @members ];然 后 以 一 个 子 域 为 键 字 , 把 它 们 堆 积 到 更 大 的 数 据 结 构 里 :261

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!