📄 referencesandrecords.mht
字号:
<TD><PRE class=3DSCREEN><FONT color=3D#f5deb3 size=3D+1><FONT =
color=3D#bebebe>#-----------------------------
</FONT>FieldName: Value
<FONT color=3D#bebebe>#-----------------------------
</FONT><FONT color=3D#ffa500>foreach</FONT> <FONT =
color=3D#9ac0cd>$record</FONT> <FONT color=3D#00ffff>(</FONT><FONT =
color=3D#cdad00>@Array_of_Records</FONT><FONT color=3D#00ffff>)</FONT> =
<FONT color=3D#00ffff>{</FONT><FONT color=3D#43cd80> </FONT>
<FONT color=3D#ffa500>for</FONT> <FONT color=3D#9ac0cd>$key</FONT> =
<FONT color=3D#00ffff>(</FONT><FONT color=3D#ff7f50>sort</FONT> <FONT =
color=3D#ff7f50>keys</FONT> %$record<FONT color=3D#00ffff>)</FONT> <FONT =
color=3D#00ffff>{</FONT>
<FONT color=3D#ff7f50>print</FONT> <FONT color=3D#00cd00>"$key: =
$record->{$key}\n"</FONT><FONT color=3D#00ffff>;</FONT>
<FONT color=3D#00ffff>}</FONT><FONT color=3D#43cd80> </FONT>
<FONT color=3D#ff7f50>print</FONT> <FONT =
color=3D#00cd00>"\n"</FONT><FONT color=3D#00ffff>;</FONT>
<FONT color=3D#00ffff>}</FONT>
<FONT color=3D#bebebe>#-----------------------------
</FONT>$/ =3D <FONT color=3D#00cd00>""</FONT><FONT =
color=3D#00ffff>;</FONT> <FONT color=3D#bebebe># =
paragraph read mode
</FONT><FONT color=3D#ffa500>while</FONT> <FONT =
color=3D#00ffff>(</FONT><><FONT color=3D#00ffff>)</FONT> <FONT =
color=3D#00ffff>{</FONT>
<FONT color=3D#ffa500>my</FONT> <FONT color=3D#cdad00>@fields</FONT> =
=3D <FONT color=3D#ff7f50>split</FONT> /^<FONT =
color=3D#00ffff>([</FONT>^:<FONT color=3D#00ffff>]</FONT>+<FONT =
color=3D#00ffff>)</FONT>:\s*/<FONT color=3D#ff7f50>m</FONT><FONT =
color=3D#00ffff>;</FONT>
<FONT color=3D#ff7f50>shift</FONT> <FONT =
color=3D#cdad00>@fields</FONT><FONT color=3D#00ffff>;</FONT> <FONT =
color=3D#bebebe># for leading null field
</FONT> <FONT color=3D#ff7f50>push</FONT><FONT =
color=3D#00ffff>(</FONT><FONT color=3D#cdad00>@Array_of_Records</FONT>, =
<FONT color=3D#00ffff>{</FONT> <FONT color=3D#ff7f50>map</FONT> /<FONT =
color=3D#00ffff>(</FONT>.*<FONT color=3D#00ffff>)</FONT>/, <FONT =
color=3D#cdad00>@fields</FONT> <FONT color=3D#00ffff>});</FONT>
<FONT color=3D#00ffff>}</FONT><FONT color=3D#43cd80> </FONT>
<FONT color=3D#bebebe>#-----------------------------
</FONT></PRE></FONT></TD></TR></TBODY></TABLE></DIV>
<DIV class=3DSECT2>
<H2 class=3DSECT2><A name=3DAEN625>Printing Data Structures</A></H2>
<TABLE width=3D"100%" bgColor=3D#2f4f4f border=3D0>
<TBODY>
<TR>
<TD><PRE class=3DSCREEN><FONT color=3D#f5deb3 size=3D+1><FONT =
color=3D#bebebe>#-----------------------------
</FONT>DB<<FONT color=3D#cdcd00>1</FONT>> $reference =3D <FONT =
color=3D#00ffff>[</FONT> <FONT color=3D#00ffff>{</FONT> <FONT =
color=3D#00cd00>"foo"</FONT> =3D> <FONT color=3D#00cd00>"bar"</FONT> =
<FONT color=3D#00ffff>}</FONT>, <FONT color=3D#cdcd00>3</FONT>, <FONT =
color=3D#ffa500>sub</FONT> <FONT color=3D#00ffff>{</FONT> <FONT =
color=3D#ff7f50>print</FONT> <FONT color=3D#00cd00>"hello, =
world\n"</FONT> <FONT color=3D#00ffff>}</FONT> <FONT =
color=3D#00ffff>];</FONT>
DB<<FONT color=3D#cdcd00>2</FONT>> <FONT color=3D#98fb98>x</FONT> =
$reference
<FONT color=3D#cdcd00>0</FONT> ARRAY<FONT =
color=3D#00ffff>(</FONT>0x1d033c<FONT color=3D#00ffff>)</FONT>
<FONT color=3D#cdcd00>0</FONT> HASH<FONT =
color=3D#00ffff>(</FONT>0x7b390<FONT color=3D#00ffff>)</FONT>
<FONT color=3D#00cd00>'foo'</FONT> =3D <FONT =
color=3D#00cd00>'bar'</FONT>>
<FONT color=3D#cdcd00>1</FONT> <FONT color=3D#cdcd00>3</FONT>
<FONT color=3D#cdcd00>2</FONT> CODE<FONT =
color=3D#00ffff>(</FONT>0x21e3e4<FONT color=3D#00ffff>)</FONT>
- & in ???>
<FONT color=3D#bebebe>#-----------------------------
</FONT><FONT color=3D#ffa500>use</FONT> <FONT =
color=3D#b2dfee>Data::Dumper</FONT><FONT color=3D#00ffff>;</FONT>
<FONT color=3D#ff7f50>print</FONT> Dumper<FONT =
color=3D#00ffff>(</FONT>$reference<FONT color=3D#00ffff>);</FONT>
<FONT color=3D#bebebe>#-----------------------------
</FONT>D<<FONT color=3D#cdcd00>1</FONT>> <FONT =
color=3D#98fb98>x</FONT> \<FONT color=3D#cdad00>@INC</FONT>
<FONT color=3D#cdcd00>0</FONT> ARRAY<FONT =
color=3D#00ffff>(</FONT>0x807d0a8<FONT color=3D#00ffff>)</FONT>
<FONT color=3D#cdcd00>0</FONT> <FONT =
color=3D#00cd00>'/home/tchrist/perllib'</FONT><FONT color=3D#43cd80> =
</FONT>
<FONT color=3D#cdcd00>1</FONT> <FONT =
color=3D#00cd00>'/usr/lib/perl5/i686-linux/5.00403'</FONT>
<FONT color=3D#cdcd00>2</FONT> <FONT =
color=3D#00cd00>'/usr/lib/perl5'</FONT><FONT color=3D#43cd80> </FONT>
<FONT color=3D#cdcd00>3</FONT> <FONT =
color=3D#00cd00>'/usr/lib/perl5/site_perl/i686-linux'</FONT><FONT =
color=3D#43cd80> </FONT>
<FONT color=3D#cdcd00>4</FONT> <FONT =
color=3D#00cd00>'/usr/lib/perl5/site_perl'</FONT><FONT color=3D#43cd80> =
</FONT>
<FONT color=3D#cdcd00>5</FONT> <FONT color=3D#00cd00>'.'</FONT>
<FONT color=3D#bebebe>#-----------------------------
</FONT><FONT color=3D#00ffff>{</FONT> <FONT =
color=3D#ffa500>package</FONT> <FONT color=3D#b2dfee>main</FONT><FONT =
color=3D#00ffff>;</FONT> <FONT color=3D#ffa500>require</FONT> <FONT =
color=3D#00cd00>"dumpvar.pl"</FONT> <FONT color=3D#00ffff>}</FONT><FONT =
color=3D#43cd80> </FONT>
*dumpvar =3D \&main::dumpvar <FONT color=3D#ffa500>if</FONT> =
__PACKAGE__ <FONT color=3D#98fb98>ne</FONT> <FONT =
color=3D#00cd00>'main'</FONT><FONT color=3D#00ffff>;</FONT>
dumpvar<FONT color=3D#00ffff>(</FONT><FONT =
color=3D#00cd00>"main"</FONT>, <FONT color=3D#00cd00>"INC"</FONT><FONT =
color=3D#00ffff>);</FONT> <FONT color=3D#bebebe># show both =
</FONT><FONT color=3D#cdad00>@INC</FONT><FONT color=3D#bebebe> and =
</FONT><FONT color=3D#cdcd00>%INC</FONT><FONT color=3D#bebebe>
#-----------------------------
</FONT><FONT color=3D#cdad00>@INC</FONT> =3D <FONT =
color=3D#00ffff>(</FONT>
<FONT color=3D#cdcd00>0</FONT> <FONT =
color=3D#00cd00>'/home/tchrist/perllib/i686-linux'</FONT>
<FONT color=3D#cdcd00>1</FONT> <FONT =
color=3D#00cd00>'/home/tchrist/perllib'</FONT>
<FONT color=3D#cdcd00>2</FONT> <FONT =
color=3D#00cd00>'/usr/lib/perl5/i686-linux/5.00404'</FONT>
<FONT color=3D#cdcd00>3</FONT> <FONT =
color=3D#00cd00>'/usr/lib/perl5'</FONT>
<FONT color=3D#cdcd00>4</FONT> <FONT =
color=3D#00cd00>'/usr/lib/perl5/site_perl/i686-linux'</FONT>
<FONT color=3D#cdcd00>5</FONT> <FONT =
color=3D#00cd00>'/usr/lib/perl5/site_perl'</FONT>
<FONT color=3D#cdcd00>6</FONT> <FONT color=3D#00cd00>'.'</FONT>
<FONT color=3D#00ffff>)</FONT>
<FONT color=3D#cdcd00>%INC</FONT> =3D <FONT color=3D#00ffff>(</FONT>
<FONT color=3D#00cd00>'dumpvar.pl'</FONT> =3D <FONT =
color=3D#00cd00>'/usr/lib/perl5/i686-linux/5.00404/dumpvar.pl'</FONT>
<FONT color=3D#00cd00>'strict.pm'</FONT> =3D <FONT =
color=3D#00cd00>'/usr/lib/perl5/i686-linux/5.00404/strict.pm'</FONT>
<FONT color=3D#00ffff>)</FONT>
<FONT color=3D#bebebe>#-----------------------------
</FONT><FONT color=3D#ffa500>use</FONT> <FONT =
color=3D#b2dfee>Data::Dumper</FONT><FONT color=3D#00ffff>;</FONT><FONT =
color=3D#43cd80> </FONT>
<FONT color=3D#ff7f50>print</FONT> Dumper<FONT =
color=3D#00ffff>(</FONT>\<FONT color=3D#cdad00>@INC</FONT><FONT =
color=3D#00ffff>);</FONT><FONT color=3D#43cd80> </FONT>
$VAR1 =3D <FONT color=3D#00ffff>[</FONT>
<FONT color=3D#00cd00>'/home/tchrist/perllib'</FONT>,<FONT =
color=3D#43cd80> </FONT>
<FONT color=3D#00cd00>'/usr/lib/perl5/i686-linux/5.00403'</FONT>,
<FONT color=3D#00cd00>'/usr/lib/perl5'</FONT>,<FONT =
color=3D#43cd80> </FONT>
<FONT =
color=3D#00cd00>'/usr/lib/perl5/site_perl/i686-linux'</FONT>,
<FONT color=3D#00cd00>'/usr/lib/perl5/site_perl'</FONT>,<FONT =
color=3D#43cd80> </FONT>
<FONT color=3D#00cd00>'.'</FONT>
<FONT color=3D#00ffff>];</FONT>
<FONT color=3D#bebebe>#-----------------------------
</FONT></PRE></FONT></TD></TR></TBODY></TABLE></DIV>
<DIV class=3DSECT2>
<H2 class=3DSECT2><A name=3DAEN628>Copying Data Structures</A></H2>
<TABLE width=3D"100%" bgColor=3D#2f4f4f border=3D0>
<TBODY>
<TR>
<TD><PRE class=3DSCREEN><FONT color=3D#f5deb3 size=3D+1><FONT =
color=3D#bebebe>#-----------------------------
</FONT><FONT color=3D#ffa500>use</FONT> <FONT =
color=3D#b2dfee>Storable</FONT><FONT color=3D#00ffff>;</FONT>
$r2 =3D dclone<FONT color=3D#00ffff>(</FONT>$r1<FONT =
color=3D#00ffff>);</FONT>
<FONT color=3D#bebebe>#-----------------------------
</FONT><FONT color=3D#cdad00>@original</FONT> =3D <FONT =
color=3D#00ffff>(</FONT> \<FONT color=3D#cdad00>@a</FONT>, \<FONT =
color=3D#cdad00>@b</FONT>, \<FONT color=3D#cdad00>@c</FONT> <FONT =
color=3D#00ffff>);</FONT>
<FONT color=3D#cdad00>@surface</FONT> =3D <FONT =
color=3D#cdad00>@original</FONT><FONT color=3D#00ffff>;</FONT>
<FONT color=3D#bebebe>#-----------------------------
</FONT><FONT color=3D#cdad00>@deep</FONT> =3D <FONT =
color=3D#ff7f50>map</FONT> <FONT color=3D#00ffff>{</FONT> <FONT =
color=3D#00ffff>[</FONT> @$_ <FONT color=3D#00ffff>]</FONT> <FONT =
color=3D#00ffff>}</FONT> <FONT color=3D#cdad00>@original</FONT><FONT =
color=3D#00ffff>;</FONT>
<FONT color=3D#bebebe>#-----------------------------
</FONT><FONT color=3D#ffa500>use</FONT> <FONT =
color=3D#b2dfee>Storable</FONT> <FONT color=3D#ff7f50>qw</FONT><FONT =
color=3D#00ffff>(</FONT>dclone<FONT color=3D#00ffff>);</FONT><FONT =
color=3D#43cd80> </FONT>
$r2 =3D dclone<FONT color=3D#00ffff>(</FONT>$r1<FONT =
color=3D#00ffff>);</FONT>
<FONT color=3D#bebebe>#-----------------------------
</FONT><FONT color=3D#cdcd00>%newhash</FONT> =3D %<FONT =
color=3D#00ffff>{</FONT> dclone<FONT color=3D#00ffff>(</FONT>\<FONT =
color=3D#cdcd00>%oldhash</FONT><FONT color=3D#00ffff>)</FONT> <FONT =
color=3D#00ffff>};</FONT>
<FONT color=3D#bebebe>#-----------------------------
</FONT></PRE></FONT></TD></TR></TBODY></TABLE></DIV>
<DIV class=3DSECT2>
<H2 class=3DSECT2><A name=3DAEN631>Storing Data Structures to =
Disk</A></H2>
<TABLE width=3D"100%" bgColor=3D#2f4f4f border=3D0>
<TBODY>
<TR>
<TD><PRE class=3DSCREEN><FONT color=3D#f5deb3 size=3D+1><FONT =
color=3D#bebebe>#-----------------------------
</FONT><FONT color=3D#ffa500>use</FONT> <FONT =
color=3D#b2dfee>Storable</FONT><FONT color=3D#00ffff>;</FONT><FONT =
color=3D#43cd80> </FONT>
store<FONT color=3D#00ffff>(</FONT>\<FONT color=3D#cdcd00>%hash</FONT>, =
<FONT color=3D#00cd00>"filename"</FONT><FONT color=3D#00ffff>);</FONT>
<FONT color=3D#bebebe># later on...</FONT><FONT color=3D#43cd80> =
</FONT><FONT color=3D#bebebe>
</FONT>$href =3D retrieve<FONT color=3D#00ffff>(</FONT><FONT =
color=3D#00cd00>"filename"</FONT><FONT color=3D#00ffff>);</FONT> =
<FONT color=3D#bebebe># by ref
</FONT><FONT color=3D#cdcd00>%hash</FONT> =3D %<FONT =
color=3D#00ffff>{</FONT> retrieve<FONT color=3D#00ffff>(</FONT><FONT =
color=3D#00cd00>"filename"</FONT><FONT color=3D#00ffff>)</FONT> <FONT =
color=3D#00ffff>};</FONT> <FONT color=3D#bebebe># direct to hash
#-----------------------------
</FONT><FONT color=3D#ffa500>use</FONT> <FONT =
color=3D#b2dfee>Storable</FONT> <FONT color=3D#ff7f50>qw</FONT><FONT =
color=3D#00ffff>(</FONT>nstore<FONT color=3D#00ffff>);</FONT><FONT =
color=3D#43cd80> </FONT>
nstore<FONT color=3D#00ffff>(</FONT>\<FONT color=3D#cdcd00>%hash</FONT>, =
<FONT color=3D#00cd00>"filename"</FONT><FONT =
color=3D#00ffff>);</FONT><FONT color=3D#43cd80> </FONT>
<FONT color=3D#bebebe># later ...</FONT><FONT color=3D#43cd80
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -