书籍详情
Perl技术内幕
作者:(美)Steven Holzer著;王晓娟,王朝阳等译
出版社:中国水利水电出版社
出版时间:2003-01-01
ISBN:9787508412771
定价:¥96.00
购买这本书可以去
内容简介
本书详细说明了Perl的使用方法,其内容涉及到Perl应用的方方面面,并提供了大量的代码实例,使读者能够快速而容易地学会Perl。本书每一章都分为两部分,前一部分“深入分析”详细说明相关的技术信息,后一部分针对问题提供快速解决方案,可以帮助读者运用知识、解决问题,并快速掌握复杂的技术要点,从而成为专家。本书内容丰富而全面,具有很强的实用性,适用于各个层次的Perl程序员。
作者简介
暂缺《Perl技术内幕》作者简介
目录
第1章 Perl基础</font><br></font><br>1.1 深入分析</font><br>1.1.1 Perl概述</font><br>1.1.2 Perl 5.6的新功能</font><br>1.2 快速解决方案</font><br>1.2.1 获取和安装Perl</font><br>1.2.2 获取Perl安装的细节</font><br>1.2.3 编写代码:创建代码文件</font><br>1.2.4 编写代码:语句和声明</font><br>1.2.5 编写代码:查找Perl解释程序</font><br>1.2.6 编写代码:查找Perl模块</font><br>1.2.7 运行代码</font><br>1.2.8 运行代码:使用命令行开关</font><br>1.2.9 运行代码:使用-w开关显示警告</font><br>1.2.10 运行代码:使用-e开关从命令行执行代码</font><br>1.2.11 运行代码:使用-c开关检查语法</font><br>1.2.12 运行代码:交互式执行</font><br>1.2.13 基本技能:文字输入输出</font><br>1.2.14 基本技能:使用print函数</font><br>1.2.15 基本技能:文字格式化</font><br>1.2.16 基本技能:给代码增加注释</font><br>1.2.17 基本技能:阅读键盘输入</font><br>1.2.18 基本技能:使用默认变量$</font><br>1.2.19 基本技能:整理键盘输入</font><br>1.2.20 基本技能:避免脚本在Windows中迅速关闭</font><br>1.2.21 基本技能:设计Perl程序</font><br></font><br>第2章 标量变量和表</font><br></font><br>2.1 深入分析</font><br>2.1.1 标量</font><br>2.1.2 表</font><br>2.1.3 标量和表工作环境</font><br>2.2 快速解决方案</font><br>2.2.1 什么是标量</font><br>2.2.2 标量命名</font><br>2.2.3 声明标量</font><br>2.2.4 赋值运算符作用于标量</font><br>2.2.5 什么是左值</font><br>2.2.6 在标量中使用数字</font><br>2.2.7 使用未定义数值:undef</font><br>2.2.8 声明常量</font><br>2.2.9 处理Perl中的真值</font><br>2.2.10 十进制和二进制之间的转换</font><br>2.2.11 十进制和八进制之间的转换</font><br>2.2.12 十进制和十六进制之间的转换</font><br>2.2.13 给标量赋默认值</font><br>2.2.14 数字的圆整</font><br>2.2.15 在标量中使用字符串</font><br>2.2.16 是字符串还是数字</font><br>2.2.17 字将与数字转换</font><br>2.2.18 使用变量插值</font><br>2.2.19 使用高级插值</font><br>2.2.20 处理引号和裸词</font><br>2.2.21 什么是表</font><br>2.2.22 通过索引访问表元素</font><br>2.2.23 将表赋值给其他表</font><br>2.2.24 表连接到字符串</font><br>2.2.25 字符串折成表</font><br>2.2.26 使用map作用于表中的每项</font><br>2.2.27 使用grep寻找符合标准的表项</font><br>2.2.28 表排序</font><br>2.2.29 表的反向排列</font><br>2.2.30 强制进入标量环境</font><br></font><br>第3章 数组和哈希表</font><br></font><br>3.1 深入分析</font><br>3.1.1 数组概述</font><br>3.1.2 哈希表概述</font><br>3.1.3 通配量</font><br>3.2 快速解决方案</font><br>3.2.1 创建数组</font><br>3.2.2 使用数组</font><br>3.2.3 数组出栈和入栈</font><br>3.2.4 数组移位和反移位</font><br>3.2.5 确定数组长度</font><br>3.2.6 扩增或缩减数组</font><br>3.2.7 清空数组</font><br>3.2.8 合并与附加数组</font><br>3.2.9 使用数组片</font><br>3.2.10 在数组中循环</font><br>3.2.11 打印数组</font><br>3.2.12 拼接数组</font><br>3.2.13 数组反向</font><br>3.2.14 数组排序</font><br>3.2.15 确定数组是否初始化</font><br>3.2.16 删除数组元素</font><br>3.2.17 读取命令行参数:@ARGV数组</font><br>3.2.18 创建哈希表</font><br>3.2.19 使用哈希表</font><br>3.2.20 哈希表添加元素</font><br>3.2.21 确定哈希表是否拥有特定键</font><br>3.2.22 删除哈希表元素</font><br>3.2.23 在哈希表中循环</font><br>3.2.24 打印哈希表</font><br>3.2.25 调换哈希表的键和数值</font><br>3.2.26 哈希表排序</font><br>3.2.27 合并两个哈希表</font><br>3.2.28 在表赋值中使用哈希表和数组</font><br>3.2.29 为哈希表预分配内存空间</font><br>3.2.30 使用通配量</font><br>3.2.31 通配量是符号表项</font><br></font><br>第4章 运算符和优先级</font><br></font><br>4.1 深入分析</font><br>4.1.1 比较函数与运算符</font><br>4.1.2 运算符优先级</font><br>4.2 快速解决方案</font><br>4.2.1 最高优先级:项目和左向表运算符</font><br>4.2.2 使用箭头运算符:-></font><br>4.2.3 处理自加和自减操作:++和--</font><br>4.2.4 处理乘幂操作:**</font><br>4.2.5 使用一元符号运算符:!,-,~和\</font><br>4.2.6 使用绑定运算符:=~和!=</font><br>4.2.7 处理乘除运算:*和/</font><br>4.2.8 处理取模和重复:%和X</font><br>4.2.9 处理加、减和连接(+、和.)</font><br>4.2.10 使用移位运算符:<<和>></font><br>4.2.11 使用命名的一元运算符</font><br>4.2.12 使用文件测试运算符</font><br>4.2.13 使用关系(比较)运算符</font><br>4.2.14 使用相等运算符</font><br>4.2.15 比较浮点数</font><br>4.2.16 按位与值:&</font><br>4.2.17 按位或:| </font><br>4.2.18 位异或运算符:^</font><br>4.2.19 字符串位运算符</font><br>4.2.20 使用C语言风格的逻辑与:&&</font><br>4.2.21 使用C语言风格的逻辑或:||</font><br>4.2.22 使用范围运算符:..</font><br>4.2.23 使用条件运算符:?:</font><br>4.2.24 处理赋值运算符=,+=,-=等</font><br>4.2.25 使用逗号运算符:,</font><br>4.2.26 右向表运算符</font><br>4.2.27 使用逻辑否:not</font><br>4.2.28 使用逻辑与:and </font><br>4.2.29 使用逻辑或:or</font><br>4.2.30 使用逻辑异或:xor</font><br>4.2.31 引号与类引号运算符</font><br>4.2.32 文件输入/输出运算符:<></font><br>4.2.33 Perl没有的C运算符</font><br></font><br>第5章 条件语句与循环</font><br></font><br>5.1 深入分析</font><br>5.1.1 条件语句</font><br>5.1.2 循环语句</font><br>5.2 快速解决方案</font><br>5.2.1 Perl中的简单和复合语句</font><br>5.2.2 使用if语句</font><br>5.2.3 反向if语句:unless</font><br>5.2.4 使用for循环</font><br>5.2.5 使用foreach循环</font><br>5.2.6 使用while在元素中循环</font><br>5.2.7 相反的While循环:until</font><br>5.2.8 使用map在元素中循环</font><br>5.2.9 使用grep寻找元素</font><br>5.2.10 使用if、unless、until、while和foreach修饰语句</font><br>5.2.11 使用do语句创建do while循环</font><br>5.2.12 使用next跳到下一个循环重复过程</font><br>5.2.13 使用last命令结束循环</font><br>5.2.14 使用redo循环命令重复循环过程</font><br>5.2.15 创建switch语句</font><br>5.2.16 使用goto语句</font><br>5.2.17 使用eval函数执行代码</font><br>5.2.18 使用exit语句结束程序</font><br>5.2.19 使用die语句</font><br></font><br>第6章 正则表达式</font><br></font><br>6.1 深入分析</font><br>6.1.1 使用正则表达式</font><br>6.2 快速解决方案</font><br>6.2.1 创建正则表达式:概述</font><br>6.2.2 创建正则表达式:字符</font><br>6.2.3 创建正则表达式:字符类</font><br>6.2.4 创建正则表达式:多重匹配模式</font><br>6.5.5 创建正则表达式:量词</font><br>6.2.6 创建正则表达式:断言</font><br>6.2.7 创建正则表达式:引用前一次匹配的向后引用</font><br>6.2.8 创建正则表达式:正则表达式扩展</font><br>6.2.9 与m//和S///一起使用修饰符</font><br>6.2.10 用tr///转换字符串</font><br>6.2.11 和tr///一起使用修饰符</font><br>6.2.12 匹配单词</font><br>6.2.13 匹配行首</font><br>6.2.14 匹配行尾</font><br>6.2.15 检查数字</font><br>6.2.16 检查字母</font><br>6.2.17 从上一个模式结束的地方开始查找:\G</font><br>6.2.18 匹配多行文本</font><br>6.2.19 使用不区分大小写的匹配</font><br>6.2.20 提取子字符串</font><br>6.2.21 在正则表达式中使用函数调用和Perl表达式</font><br>6.2.22 查找重复的单调</font><br>6.2.23 降低量调的“贪婪”程度:最小匹配</font><br>6.2.24 删除先导和尾部空格</font><br>6.2.25 使用断言来预测和回想</font><br>6.2.26 编译正则表达式</font><br></font><br>第7章 子程序</font><br></font><br>7.1 深入分析</font><br>7.1.1 编写子程序</font><br>7.1.2 设置范围</font><br>7.1.3 返回值</font><br>7.2 快速解决方案</font><br>7.2.1 声明子程序</font><br>7.2.2 使用子程序原型</font><br>7.2.3 定义子程序</font><br>7.2.4 调用子程序</font><br>7.2.5 调用之前检查子程序是否存在</font><br>7.2.6 读取传递给予程序的参数</font><br>7.2.7 使用不同个数的参数</font><br>7.2.8 为参数设置默认值</font><br>7.2.9 子程序(函数)的返回值</font><br>7.2.10 返回undef指出操作失败</font><br>7.2.11 用my设置范围</font><br>7.2.12 要求词汇范围的变量</font><br>7.2.13 用local创建临时变量</font><br>7.2.14 确定my和local之间的差别</font><br>7.2.15 用out设置范围</font><br>7.2.16 创建永久(静态)变量</font><br>7.2.17 得到子程序的名称和caller</font><br>7.2.18 递归调用子程序</font><br>7.2.19 嵌套子程序</font><br>7.2.20 按引用传递</font><br>7.2.21 接引用返回</font><br>7.2.22 传递符号表项(Typeglob)</font><br>7.2.23 用Wantarry检查必要的返回上下文</font><br>7.2.24 创建内联函数</font><br>7.2.25 模拟命名参数</font><br>7.2.26 覆盖内置子程序</font><br>7.2.27 创建匿名子程序</font><br>7.2.28 创建子程序调度表</font><br>7.2.29 重新定义子程序</font><br></font><br>第8章 格式和字符串处理</font><br></font><br>8.1 深入分析</font><br>8.1.1 Perl格式</font><br>8.2 快速解决方案</font><br>8.2.1 显示非格式化文本:Perl here文档</font><br>8.2.2 创建格式化文本</font><br>8.2.3 格式:左对齐文本</font><br>8.2.4 格式:右对齐文本</font><br>8.2.5 格式:文本居中</font><br>8.2.6 格式:打印数字</font><br>8.2.7 格式:格式化多行输出</font><br>8.2.8 格式:用文本切片格式化输出多行文本</font><br>8.2.9 格式:无格式多行输出</font><br>8.2.10 格式:表单项部输出</font><br>8.2.11 格式:使用格式变量</font><br>8.2.12 格式:向文件打印格式化文本</font><br>8.2.13 格式:创建多页面报表</font><br>8.2.14 格式:低级格式化</font><br>8.2.15 字符串处理:用lc和uc转换大小写</font><br>8.2.16 字符串处理:用lcfirst和ucfirst转换第1个字母的大小写</font><br>8.2.17 字符串处理:用index和rindex查找字符串</font><br>8.2.18 字符串处理:用substr得到子串</font><br>8.2.19 字符串处理:用length得到字符串长度</font><br>8.2.20 字符串处理:打包和解包字符串</font><br>8.2.21 字符串处理:用sprintf格式化字符串</font><br>8.2.22 字符串处理:比较字符串</font><br>8.2.23 字符串处理:用ord和chr访问Unicode值</font><br>8.2.24 字符串处理:按字符处理字符串</font><br>8.2.25 字符串处理:颠倒字符串</font><br>8.2.26 字符串处理:用crypt加密字符串</font><br>8.2.27 字符串处理:使用引用运算符</font><br>8.2.28 POD:普通文档说明</font><br>8.2.29 POD:用POD命令创建POD</font><br>8.2.30 POD:用POD命令格式化文本</font><br>8.2.31 POD:在Perl代码中嵌入POD</font><br></font><br>第9章 引用</font><br></font><br>9.1 深入分析</font><br>9.1.1 直接引用</font><br>9.1.2 符号引用</font><br>9.1.3 箭头运算符</font><br>9.1.4 匿名数组、哈希表和子程序</font><br>9.2 快速解决方案</font><br>9.2.1 创建直接引用</font><br>9.2.2 创建匿名数组的引用</font><br>9.2.3 创建匿名哈希表的引用</font><br>9.2.4 创建对匿名子程序的引用</font><br>9.2.5 用匿名哈希表模仿用户自定义数据类型</font><br>9.2.6 用符号表得到引用</font><br>9.2.7 反引用引用</font><br>9.2.8 用箭头运算符进行反引用</font><br>9.2.9 忽略箭头运算符</font><br>9.2.10 按引用传递和返回子程序参数</font><br>9.2.11 用ref运算符确定引用类型</font><br>9.2.12 创建符号引用</font><br>9.2.13 禁止符号引用</font><br>9.2.14 避免循环引用</font><br>9.2.15 使用弱引用</font><br>9.2.16 类似哈希表的数组:作为哈希表引用使用数组引用</font><br>9.2.17 在Perl中创建永久范围闭包</font><br>9.2.18 从函数模板创建函数</font><br></font><br>第10章 预定义变量</font><br></font><br>10.1 深入分析</font><br>10.1.1 预定义变量的英语版</font><br>10.1.2 为特定的文件句柄设置预定义变量</font><br>10.2 快速解决方案</font><br>10.2.1 $':匹配后字符串</font><br>10.2.2 $-:页码上剩余的格式化行数</font><br>10.2.3 $!:当前Perl错误</font><br>10.2.4 $":插入数组值的输出字段分隔符</font><br>10.2.5 $#:打印数字的输出格式</font><br>10.2.6 $$:进程号</font><br>10.2.7 $%:当前格式输出页面</font><br>10.2.8 $&:最近模式匹配</font><br>10.2.9 $(:真实分组编号</font><br>10.2.10 $):有效组编号</font><br>10.2.11 $*:多行匹配</font><br>10.2.12 $,:输出字段分隔符</font><br>10.2.13 $.:当前输入行号</font><br>10.2.14 $/:输入记录分隔符</font><br>10.2.15 $::格式字符串分段字符</font><br>10.2.16 $;:下标分隔符</font><br>10.2.17 $?:上一次管道关闭,backtick命令,或者系统调用状态</font><br>10.2.18 $@:来自最后一个eval的错误</font><br>10.2.19 $[:数组基数</font><br>10.2.20 $\:输出记录分隔符</font><br>10.2.21 $]:Perl版本</font><br>10.2.22 $^:当前页面顶部格式</font><br>10.2.23 $^A:书写累加器</font><br>10.2.24 $^C:编译开关</font><br>10.2.25 $^D:当前调试标记</font><br>10.2.26 $^E:针对操作系统的特定错误信息</font><br>10.2.27 $^F:最大Unix系统文件描述符</font><br>10.2.28 $^H:当前语法检查</font><br>10.2.29 $^I:当前Inplace编辑值</font><br>10.2.30 $^L:输出格式换行</font><br>10.2.31 $^M:紧急事件内存缓冲区</font><br>10.2.32 $^O:操作系统名称</font><br>10.2.33 $^P:调试支持</font><br>10.2.34 $^R:最后一个正则表达式断言的结果</font><br>10.2.35 $^S:解释程序的状态——eval内部或者外部</font><br>10.2.36 $^T:脚本开始运行的时间</font><br>10.2.37 $^V:作为字符串的Perl版本</font><br>10.2.38 $^W:警告开关的当前值</font><br>10.2.39 $^X:可执行文件名称</font><br>10.2.40 ${^WARNING BITS}:警告检查</font><br>10.2.41 ${^WIDE SYSTEM CALLS}:宽字符系统调用</font><br>10.2.42 $:默认变量</font><br>10.2.43 $:匹配前字符串</font><br>10.2.44 $|:关闭缓冲区</font><br>10.2.45 $~:当前报告格式的名称</font><br>10.2.46 $+:最后一次括号匹配</font><br>10.2.47 $<:真实用户ID</font><br>10.2.48 $=:格式当前页面长度</font><br>10.2.49 $>:有效用户ID</font><br>10.2.50 $0:脚本名称</font><br>10.2.51 $ARGV:当前<>输入文件的名称</font><br>10.2.52 $n:模式匹配编号n</font><br>10.2.53 %:::主要符号表(%main::)</font><br>10.2.54 %ENV:环境变量</font><br>10.2.55 %INC:包含文件</font><br>10.2.56 %SIG:信号处理程序</font><br>10.2.57 @_:子程序参数</font><br>10.2.58 @ARGV:命令行参数</font><br>10.2.59 @INC:计算脚本的位置</font><br></font><br>第11章 内置函数:数据处理</font><br></font><br>11.1 深入分析</font><br>11.1.1 Perl函数</font><br>11.2 快速解决方案</font><br>11.2.1 abs:绝对值</font><br>11.2.2 atan2:反正切</font><br>11.2.3 Math::BigInt和Math::BigFloat:大数</font><br>11.2.4 Chr:字符码中的字符</font><br>11.2.5 Math::Complex:复数</font><br>11.2.6 cos:余弦</font><br>11.2.7 each:哈希表键/值对</font><br>11.2.8 eval:运行期间计算Perl代码</font><br>11.2.9 exists:检查哈希表键</font><br>11.2.10 exp:计算e的幂</font><br>11.2.11 grep:查找匹配元素</font><br>11.2.12 hex:从16进制转换</font><br>11.2.13 index:子串的位置</font><br>11.2.14 int:截断整数</font><br>11.2.15 整数计算</font><br>11.2.16 join:将表加入到字符串中</font><br>11.2.17 keys:得到哈希表键</font><br>11.2.18 lc:转换为小写</font><br>11.2.19 lcfirst:第一个字符转换为小写</font><br>11.2.20 length:得到字符串的长度</font><br>11.2.21 pack:将值打包到字符串中</font><br>11.2.22 POSIX函数</font><br>11.2.23 rand:创建随机数</font><br>11.2.24 reverse:颠倒表</font><br>11.2.25 rindex:颠倒索引</font><br>11.2.26 sin:正弦</font><br>11.2.27 sort:排序表</font><br>11.2.28 split:字符串拆分为字符串数组</font><br>11.2.29 sprintf:格式化字符串</font><br>11.2.30 sqrt:平方根</font><br>11.2.31 srand:设置随机数种子</font><br>11.2.32 substr:得到子串</font><br>11.2.33 time:得到从1970年1月1日以来的秒数</font><br>11.2.34 Math::Trig中的三角函数</font><br>11.2.35 uc:转换为大写</font><br>11.2.36 ucfirst:大写第一个字符</font><br>11.2.37 unpack:从打包字符串中解开值</font><br>11.2.38 values:得到哈希表值</font><br>11.2.39 vec:访问无符号整数向量</font><br></font><br>第12章 内置函数:输入/输出</font><br></font><br>12.1 深入分析</font><br>12.1.1 使用Perl输入/输出</font><br>12.2 快速解决方案</font><br>12.2.1 alarm:发送警告信号</font><br>12.2.2 使用sleep函数</font><br>12.2.3 carp、cluck、croak和confess:报告警告和错误</font><br>12.2.4 chomp和chop:删除行尾</font><br>12.2.5 curses:终端屏幕处理接口</font><br>12.2.6 die:由于错误而退出</font><br>12.2.7 Expect:控制其他应用程序</font><br>12.2.8 getc:得到输入字符</font><br>12.2.9 记录错误</font><br>12.2.10 POSIX:Termios:低级终端接口</font><br>12.2.11 print:打印列表数据</font><br>12.2.12 Printf:打印格式化列表数据</font><br>12.2.13 控制台上的彩色打印</font><br>12.2.14 用尖括号读取输入:<></font><br>12.2.15 重定向STDIN、STDOUT和STDERR</font><br>12.2.16 Term::Cap:清除屏幕</font><br>12.2.17 Term::Cap:定位光标以显示文本</font><br>12.2.18 Term::ReadKey:简单终端驱动程序控制</font><br>12.2.19 Term::ReadLine:支持命令行编辑</font><br>12.2.20 warn:显示警告</font><br>12.2.21 write:写入格式化记录</font><br></font><br>第13章 内置函数:文件处理</font><br></font><br>13.1 深入分析</font><br>13.1.1 Perl中的文件处理</font><br>13.2 快速解决方案</font><br>13.2.1 open:打开文件</font><br>13.2.2 close:关闭文件</font><br>13.2.3 print:打印到文件</font><br>13.2.4 write:向文件中写入</font><br>13.2.5 binmode:设置二进制模式(适用于MS-DOS)</font><br>13.2.6 设置输出通道缓冲方式</font><br>13.2.7 从命令行读取传递的文件</font><br>13.2.8 使用角运算符<>从文件句柄中读取</font><br>13.2.9 read:逐个字节读取输入</font><br>13.2.10 readline:读取一行数据</font><br>13.2.11 getc:读取一个字符</font><br>13.2.12 seek:设置文件中的当前位置</font><br>13.2.13 tell:得到文件中的当前位置</font><br>13.2.14 stat:得到文件状态</font><br>13.2.15 POSIX:文件函数</font><br>13.2.16 select:设置默认输出文件句柄</font><br>13.2.17 eof:测试文件尾</font><br>13.2.18 flock:锁定文件以进行独占访问</font><br>13.2.19 删除或者添加回车——从DOS到Unix和从Unix到DOS</font><br>13.2.20 在程序代码中存储文件</font><br>13.2.21 统计文件中的行数</font><br>13.2.22 向子程序传递文件句柄</font><br>13.2.23 复制和重定向文件句柄</font><br>13.2.24 创建临时文件名</font><br>13.2.25 就地编辑文件</font><br>13.2.26 向文本文件中写入数组和从文本文件中读取数组</font><br>13.2.27 向文本文件中读/写哈希表</font><br>13.2.28 使用固定长度的记录进行随机访问</font><br>13.2.29 chmod:修改文件权限</font><br>13.2.30 glob:查找匹配的文件</font><br>13.2.31 rename:重命名文件</font><br>13.2.32 unlink:删除文件</font><br>13.2.33 Copy:复制文件</font><br>13.2.34 opendir:打开目录句柄</font><br>13.2.35 closedir:关闭目录句柄</font><br>13.2.36 readdir:读取目录项</font><br>13.2.37 telldir:得到目录位置</font><br>13.2.38 seekdir:设置目录中的当前位置</font><br>13.2.39 rewinddir:将目录位置设置到开头</font><br>13.2.40 chdir:改变工作目录</font><br>13.2.41 mkdir:创建目录</font><br>13.2.42 rmdir:删除目录</font><br></font><br>第14章 标准模块</font><br></font><br>14.1 深入分析</font><br>14.1.1 可用的标准模块</font><br>14.1.2 使用do,require和use</font><br>14.2 快速解决方案</font><br>14.2.1 安装模块</font><br>14.2.2 Benchmark:测试代码执行时间</font><br>14.2.3 Class::Struct:创建C样式的结构</font><br>14.2.4 constant:创建常量</font><br>14.2.5 CreditCard:检查信用卡号</font><br>14.2.6 Cwd:得到当前工作目录的路径</font><br>14.2.7 Data::Dumper:显示结构化数据</font><br>14.2.8 Date::Calc:日期和时间相加和相减</font><br>14.2.9 diagnostics:打印完整的诊断结果</font><br>14.2.10 English:为预定义变量取英语名称</font><br>14.2.11 Env:导入环境变量</font><br>14.2.12 ExtUtils:支持Perl扩展</font><br>14.2.13 File::Compare:比较文件</font><br>14.2.14 File::Find:在目录中查找文件</font><br>14.2.15 FileCache:保存多个打开的输出文件</font><br>14.2.16 GetOpt:解释命令行开关</font><br>14.2.17 locale:启用区分地域的操作</font><br>14.2.18 safe:创建安全代码隔间</font><br>14.2.19 shell:作为子程序使用命令行解释器命令</font><br>14.2.20 strict:限制编码习惯</font><br>14.2.21 Text::Abbrev:找到惟一的缩写</font><br>14.2.22 Text::Tabs:在文本中使用制表位</font><br>14.2.23 Text::Wrap:封闭文本行</font><br>14.2.24 Tie::1xHash:接插入顺序恢复哈希表值</font><br>14.2.25 Tie::RefHash:在哈希表中存储直接引用</font><br>14.2.26 Time:创建时间惯例</font><br>14.2.27 vars:预先声明的全局变量</font><br></font><br>第15章 Perl/Tk——窗口、按钮及其他</font><br></font><br>15.1 深入分析</font><br>15.2 快速解决方案</font><br>15.2.1 创建Tk窗口</font><br>15.2.2 使用标签部件</font><br>15.2.3 使用按钮部件</font><br>15.2.4 使用文本部件</font><br>15.2.5 指定索引</font><br>15.2.6 用pack排列Tk部件</font><br>15.2.7 绑定Tk事件和代码</font><br>15.2.8 使用单选按钮和复选框部件</font><br>15.2.9 使用列表框部件</font><br>15.2.10 使用标尺部件</font><br>15.2.11 使用滚动条部件</font><br>15.2.12 使用画布部件</font><br>15.2.13 显示图像</font><br>15.2.14 显示位图</font><br>15.2.15 用框架安排部件</font><br>15.2.16 用place安排部件</font><br>15.2.17 使用输入部件</font><br>15.2.18 用Scrolled构造函数滚动部件</font><br>15.2.19 使用菜单部件</font><br>15.2.20 使用级联菜单、复进菜单、单选菜单、菜单加速器</font><br>15.2.21 使用对话框</font><br></font><br>第16章 数据结构和数据库</font><br></font><br>16.1 深入分析</font><br>16.1.1 Perl中的数据结构</font><br>16.1.2 好的想法:use strict vars</font><br>16.1.3 Perl中的数据库</font><br>16.2 快速解决方案</font><br>16.2.1 为复杂记录存储引用和其他元素</font><br>16.2.2 使用数组的数组(多维数组)</font><br>16.2.3 创建数组的数组</font><br>16.2.4 访问数组的数组</font><br>16.2.5 使用哈希表的哈希表</font><br>16.2.6 创建哈希表的哈希表</font><br>16.2.7 访问哈希表的哈希表</font><br>16.2.8 使用哈希表的数组</font><br>16.2.9 创建哈希表的数组</font><br>16.2.10 访问哈希表的数组</font><br>16.2.11 使用数组的哈希表</font><br>16.2.12 创建数组的哈希表</font><br>16.2.13 访问数组的哈希表</font><br>16.2.14 使用链表和环形缓冲区</font><br>16.2.15 在磁盘上存储数据结构</font><br>16.2.16 复制数据结构</font><br>16.2.17 打印数据结构</font><br>16.2.18 创建数据结构类型</font><br>16.2.19 写数据库文件</font><br>16.2.20 读取数据库文件</font><br>16.2.21 数据库排序</font><br>16.2.22 文本文件作为数据库处理</font><br>16.2.23 执行SQL</font><br></font><br>第17章 创建包和模块</font><br></font><br>17.1 深入分析</font><br>17.1.1 包</font><br>17.1.2 模块</font><br>17.2 快速解决方案</font><br>17.2.1 创建包</font><br>17.2.2 创建包构造函数:BEGIN</font><br>17.2.3 创建包析构函数:END</font><br>17.2.4 确定当前包名</font><br>17.2.5 跨过文件界线拆分包</font><br>17.2.6 用our跨过包设置全局范围</font><br>17.2.7 创建模块</font><br>17.2.8 默认从模块导出符号</font><br>17.2.9 允许符号从模块中导出</font><br>17.2.10 阻止自动符号导入</font><br>17.2.11 阻止符号导出</font><br>17.2.12 不带import方法的导出</font><br>17.2.13 在编译期间用未知包名限制符号</font><br>17.2.14 重新定义内置子程序</font><br>17.2.15 创建嵌套模块</font><br>17.2.16 设置并检测模块版本号</font><br>17.2.17 在模块中自动加载子程序</font><br>17.2.18 用AUTOLOAD仿真子程序</font><br>17.2.19 使用AutoLoader和SelfLoader</font><br>17.2.20 用h2xs创建专业模块和模块模板</font><br>17.2.21 测试模块</font><br>17.2.22 压缩模块以备发布</font><br>17.2.23 提交模块到CPAN</font><br>17.2.24 XS:在C中创建Perl扩展名</font><br>17.2.25 传递数值到XSUB</font><br>17.2.26 从XSUB返回表</font><br></font><br>第18章 创建类和对象</font><br></font><br>18.1 深入分析</font><br>18.1.1 类</font><br>18.1.2 对象</font><br>18.1.3 方法</font><br>18.1.4 数据成员</font><br>18.1.5 继承</font><br>18.2 快速解决方案</font><br>18.2.1 创建类</font><br>18.2.2 创建构造函数初始化对象</font><br>18.2.3 从类创建对象</font><br>18.2.4 创建类对象</font><br>18.2.5 创建对象方法(实例方法)</font><br>18.2.6 调用方法</font><br>18.2.7 在对象内存储数据(实例变量)</font><br>18.2.8 创建数据访问方法</font><br>18.2.9 标记实例方法和变量为私有</font><br>18.2.10 创建对象共享的类变量</font><br>18.2.11 创建析构函数</font><br>18.2.12 实现类继承</font><br>18.2.13 继承构造函数</font><br>18.2.14 继承实例数据</font><br>18.2.15 多重继承</font><br></font><br>第19章 面向对象编程</font><br></font><br>19.1 深入分析</font><br>19.1.1 数据类型与类连接</font><br>19.1.2 面向对象编程的私有性</font><br>19.1.3 重载运算符</font><br>19.1.4 附加的OOP主题</font><br>19.2 快速解决方案</font><br>19.2.1 覆盖基类方法</font><br>19.2.2 访问已覆盖的基类方法</font><br>19.2.3 标量与类相连接</font><br>19.2.4 数组与类连接</font><br>19.2.5 哈希表与类连接</font><br>19.2.6 使用Perl UNIVERSAL类</font><br>19.2.7 用闭包创建私有数据成员</font><br>19.2.8 使用匿名子程序创建私有方法</font><br>19.2.9 创建对方法的引用</font><br>19.2.10 数据成员用作变量</font><br>19.2.11 使用包含其他对象的对象</font><br>19.2.12 委托的类关系</font><br>19.2.13 重载二元运算符</font><br>19.2.14 重载一元运算符</font><br></font><br>第20章 Internet和套接字编程</font><br></font><br>20.1 深入分析</font><br>20.1.1 编写Internet程序</font><br>20.1.2 编写套接字程序</font><br>20.1.3 客户和服务器</font><br>20.2 快速解决方案</font><br>20.2.1 获得DNS地址</font><br>20.2.2 使用FTP</font><br>20.2.3 使用LWP::Simple获取Web页面</font><br>20.2.4 用LWP::UserAgent获取Web页面</font><br>20.2.5 Ping主机</font><br>20.2.6 从新闻组下载布告</font><br>20.2.7 接收电子邮件</font><br>20.2.8 发送电子邮件</font><br>20.2.9 使用Telnet</font><br>20.2.10 套接字匹配对应用于进程间通信</font><br>20.2.11 采用IO::Socket创建TCP客户</font><br>20.2.12 采用IO::Socket创建TCP服务器</font><br>20.2.13 采用多线程及IO::Socket创建交互式双向客户/服务器应用程序</font><br>20.2.14 使用Socket创建TCP客户</font><br>20.2.15 使用Socket创建TCP服务器</font><br>20.2.16 创建Unix域套接字客户</font><br>20.2.17 创建Unix域套接字服务器</font><br>20.2.18 查看是可以从套接字中读取还是可以写到套接字</font><br>20.2.19 创建UDP客户</font><br>20.2.20 创建UDP服务器</font><br></font><br>第21章 CGI编程:CGI.pm</font><br></font><br>21.1 深入分析</font><br>21.1.1 使用CGI.pm进行CGI编程</font><br>21.1.2 在cgil.cgi中创建HTML控件</font><br>21.1.3 在cgi2.cgi中读取HTML控件的数据</font><br>21.2 快速解决方案</font><br>21.2.1 使用PerlScript</font><br>21.2.2 启动HTML文档</font><br>21.2.3 显示图像</font><br>21.2.4 创建HTML标题</font><br>21.2.5 居中HTML元素</font><br>21.2.6 创建项目编号列表</font><br>21.2.7 创建超技接</font><br>21.2.8 创建横线</font><br>21.2.9 创建HTML表单</font><br>21.2.10 处理文本字段</font><br>21.2.11 读取HTML控件中的数据</font><br>21.2.12 处理文本区域</font><br>21.2.13 处理复选框</font><br>21.2.14 处理滚动列表</font><br>21.2.15 处理单选按钮</font><br>21.2.16 处理口令字段</font><br>21.2.17 处理弹出菜单</font><br>21.2.18 处理隐藏数据字段</font><br>21.2.19 创建Submit和Reset按钮从HTML表单上传数据</font><br>21.2.20 结束HTML表单</font><br>21.2.21 结束HTML文档</font><br>21.2.22 从网页调用CGI脚本</font><br>21.2.23 创建图像映射</font><br>21.2.24 创建框架</font><br>21.2.25 非面向对象的CGI编程</font><br>21.2.26 调试CGI脚本</font><br></font><br>第22章 CGI:创建Web计数器、来宾簿、电子邮件程序和安全脚本</font><br></font><br>22.1 深入分析</font><br>22.1.1 CGI安全</font><br>22.2 快速解决方案</font><br>22.2.1 认真对待安全性</font><br>22.2.2 处理被感染的数据</font><br>22.2.3 未感染的数据</font><br>22.2.4 在UniX中赋予CGI脚本更多的特权</font><br>22.2.5 确定浏览器处理的MIME类型</font><br>22.2.6 从CGI脚本返回图像</font><br>22.2.7 创建网页点击计数器</font><br>22.2.8 创建来宾簿</font><br>22.2.9 从CGI脚本发送电子邮件</font><br></font><br>第23章 CGI:创建多用户聊天服务器推技术、cookie和游戏</font><br></font><br>23.1 深入分析</font><br>23.2 快速解决方案</font><br>23.2.1 创建多用户聊天应用程序</font><br>23.2.2 使用服务器推技术</font><br>23.2.3 使用服务器端包含</font><br>23.2.4 写和读Cookies</font><br>23.2.5 创建游戏</font><br></font><br>第24章 CGI:创建购物车、数据库、站点搜索和文件上传</font><br></font><br>24.1 深入分析</font><br>24.1.1 处理CGI.pm</font><br>24.2 快速解决方案</font><br>24.2.1 在重新显示的表单中初始化数据</font><br>24.2.2 使用CGI环境变量检查浏览器类型及更多信息</font><br>24.2.3 检查用户是否登录</font><br>24.2.4 重定向浏览器</font><br>24.2.5 数据库CGI编程</font><br>24.2.6 上传文件</font><br>24.2.7 Web站点搜索:查询匹配字符串</font><br>24.2.8 购物车演示程序</font><br>24.2.9 没有Cookies的购物车演示程序</font><br></font><br>第25章 XML::DOM解析</font><br></font><br>25.1 深入分析</font><br>25.1.1 XML看起来像什么?</font><br>25.1.2 格式良好的有效XML文档</font><br>25.1.3 XML文档类型定义</font><br>25.1.4 在DTD中指定属性</font><br>25.1.5 XML和Perl</font><br>25.1.6 XML::DOM模块</font><br>25.2 快速解决方案</font><br>25.2.1 使用XML::DOM</font><br>25.2.2 DOM解析:DOMParser.pl示例</font><br>25.2.3 处理文档节点</font><br>25.2.4 处理元素节点</font><br>25.2.5 处理属性节点</font><br>25.2.6 处理文本节点</font><br>25.2.7 处理XML处理指令节点</font><br>25.2.8 结束元素节点</font><br>25.2.9 运行DOMParser.pl示例</font><br></font><br>第26章 XML:修改文档内容和SAX解析</font><br></font><br>26.1 深入分析</font><br>26.1.1 在XML文档中导航</font><br>26.1.2 修改XML文档</font><br>26.1.3 XML的简单API</font><br>26.2 快速解决方案</font><br>26.2.1 在XML文档中导航</font><br>26.2.2 搜索特定的XML元素</font><br>26.2.3 创建新的XML元素</font><br>26.2.4 创建新的XML属性</font><br>26.2.5 替换XML元素</font><br>26.2.6 删除XML元素</font><br>26.2.7 处理错误</font><br>26.2.8 使用SAX</font><br>26.2.9 SAX解析:SAXParser.pl示例</font><br>26.2.10 处理文档的开头</font><br>26.2.11 处理元素的开头</font><br>26.2.12 处理属性</font><br>26.2.13 处理元素的末尾</font><br>26.2.14 处理文本</font><br>26.2.15 处理指令的处理</font><br>26.2.16 处理文档的末尾</font><br>26.2.17 运行SAXParser.pl</font><br>26.2.18 使用SAX在XML文档中导航</font><br>26.2.19 处理SAX解析中的错误</font><br></font><br>第27章 CGI、SOAP和WML</font><br></font><br>27.1 深入分析</font><br>27.1.1 XML和CGI</font><br>27.1.2 CGI::XMLForm模块</font><br>27.1.3 SOAP</font><br>27.1.4 WML</font><br>27.2 快速解决方案</font><br>27.2.1 XML与CGI一起使用</font><br>27.2.2 CGI::XMLForm写XML</font><br>27.2.3 CGI::XMLForm查询XML</font><br>27.2.4 使用SOAP</font><br>27.2.5 WML:创建超链接</font><br>27.2.6 WML:处理文本输入</font><br>27.2.7 WML:使用Select元素</font><br>27.2.8 WML:创建表</font><br>27.2.9 WML:创建计时器</font><br>27.2.10 WML:处理图像</font><br>27.2.11 WML:接口到Perl</font><br>27.2.12 WML:使用表单接口到Perl</font><br>27.2.13 WML:将多个参数传递给Perl</font><br></font><br>第28章 代码中的Web处理</font><br></font><br>28.1 深入分析</font><br>28.1.1 HTML、HTTP和LWP模块</font><br>28.1.2 处理在线用户注册</font><br>28.2 快速解决方案</font><br>28.2.1 获取并解析网页</font><br>28.2.2 获取网页中的链接</font><br>28.2.3 用LWP::UserAgent和HTTP::request获取网页</font><br>28.2.4 用IO::Socket获取网页</font><br>28.2.5 创建镜像站点</font><br>28.2.6 从代码中提交HTML表单</font><br>28.2.7 创建小型Web服务器</font><br>28.2.8 处理在线用户注册
猜您喜欢