P7-. Perl文本处理功能强大。
P16,17. Perl将所有数都当作double类型处理(但Perl有时会在内部用整形处理,编程员无须过问的方式,以加快速度)。
P22. 单引号包含的字符串,只有\和\'两个转义字符。
P24. 字符串和数字的转换是自动的,根据 *** 作符需求的类型。
P35. undef值既非数值类型亦非字符串类型,但也是标量(scalar value)。
P39. once again,"no unneccessary limits"
P40. 数组支持元素序号为负数(从后向前数),$array[-1]是array数组中倒数第一个元素,既最后一个。
P46. foreach中用于存载List元素的变量,不是复制而来,即改变它会改变List。
P47. 默认参数$_。printf ;
P51. forcing scalar context.
P63. use strict.
P70. 为何我总是忘记“<>”这个 *** 作符是从哪里读的?
P93. hash变量赋值给array时,会将key和value同时给出。
P102. .不匹配\n。
P110. $匹配时不论string最后是否有\n,/^fred$/ will match "fred" or "fred\n" with equal ease.
P113. 正则式中()中都按部分保存在内存中。而保存第四个匹配到的字符串,保存第四个()内的正则式。
P114. 内容保存到在此遇到匹配。建议使用不要等太久才用。
P117. 正则式符号的优先级。
P127. 贪心匹配的.*会把所有匹配的都拿去,若.*后还有正则式再一个个字符回头找。非贪心匹配.*?则先不匹配,后面匹配不上再收留下一个字符。.+?等类似。
P149. Perl中and和or返回最后的值(而C返回ture或false)。
P151. 逻辑 *** 作符的怪用法(但“or dIE”确实是例外的不错)。
P157. 判断文件是text还是binary,居然是靠猜的。而且一个空文件可以既是binary又是text,判定依Perl。
P157. -t可以判断STDIN是否被重定向(如果返回false则应该是了)。
P158. (-s)避免参数误判。
P159. 定位文件:device number + inode number。
P165. 通配符“*”不匹配以“.”开头的文件,匹配所有文件需要“* .*”两个通配符。
P170. 删除文件需要的是该文件所在目录给的权限,不是文件本身决定。
P171. 正则式中s/\.old/.new/中第二个块中点好无需用反斜杠,因为第一个块是正则式,第二个只是字符串。
P174. UNIX中删除文件会将inode计数减一,但不会破坏内容。所以文件可以恢复(只要没被新文件覆盖),但是没有简单方法。
P174. 第三行说“the inode numbers in a given directory Listing refer to inodes on that same mounted volume”,是指:文件的内存inode指向该文件在挂载磁盘中的磁盘inode。参看Linux的文件系统架构一文。
P183. Perl可以直接用“=”修改sub的返回值。
P184. 好用的money值格式化:1 while $money =~ s/^(-?\d+)(\d{3})/,/;
P201. 有趣的processes as filehandles,管道类似。和"`"不同,不需等命令执行完才返回(见P203例子)。
P206. 延迟处理信号的例子。脚注值得一看。
P217. 异常处理eval。
P219. 4个eval不能处理的异常(errors crash Perl; Syntax error; exit operator; warnings)。
P225,227. $,@,%指明上下文,不属于变量。my %hash; %hash,@hash,$hash各有意义。
Appendix B. 至少该浏览一下,就算不打算深入学习。
总结以上是内存溢出为你收集整理的Learning Perl(4th edition)笔记<东南大学影印版>全部内容,希望文章能够帮你解决Learning Perl(4th edition)笔记<东南大学影印版>所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)