C程序员精通Perl
分類: 图书,计算机/网络,程序设计,Perl,
作者: [美]Steve Oualline著
出 版 社: 人民邮电出版社
出版时间: 2003-2-1字数: 537千版次: 1版1次页数: 340印刷时间: 2003-2-1开本:印次:纸张: 胶版纸I S B N : 9787115108777包装: 平装编辑推荐
本书帮助有C和C++背景的程序员学习和使用Perl语言。
全书共17章,探讨了Perl语言的所有知识要点。既包括C程序员所熟悉的变量、数据结构、控制语句和子程序,又包括C中所没有的报告编写、文本表格操纵、CGI编程以及简单数据库接口,还讲述了如何充分利用CPAN库中广泛的Perl模块库。
本书可作为C和C++程序员学习Perl编程的参考书。对于Perl语言的初学者,本书可以帮助他们了解C和Perl之间可比较、可结合特性。
内容简介
本书帮助有C和C++背景的程序员学习和使用Perl语言。
全书共17章,探讨了Perl语言的所有知识要点。既包括C程序员所熟悉的变量、数据结构、控制语句和子程序,又包括C中所没有的报告编写、文本表格操纵、CGI编程以及简单数据库接口,还讲述了如何充分利用CPAN库中广泛的Perl模块库。
本书可作为C和C++程序员学习Perl编程的参考书。对于Perl语言的初学者,本书可以帮助他们了解C和Perl之间可比较、可结合特性。
作者简介
目录
第1章 探索Perl1
1.1 在线文档2
1.1.1 perldoc2
1.1.2 函数定义3
1.1.3 模块文档3
1.1.4 如何打印出美观文档5
1.2 CPAN(模块档案)5
1.3 安装模块7
1.3.1 人工安装(UNIX、Linux和Microsoft Windows)8
1.3.2 处理权限问题9
1.3.3 使用CPAN安装器(UNIX和Linux)12
1.3.4 使用CPAN15
1.3.5 使用Perl包管理器(Microsoft Windows)16
1.3.6 详细安装向导17
1.3.7 UNIX安装(所有系统)18
1.4 使用Perl调试器21
1.4.1 命令行调试器22
1.4.2 使用ptkdb调试器23
1.5 小结25
1.6 练习25
1.7 资源25
1.7.1 在线文档25
1.7.2 模块库25
1.7.3 软件26
第2章 Perl基础知识27
2.1 编写第一个Perl程序27
2.2 变量声明和简单表达式28
2.2.1 变量28
2.2.2 简单算法和字符串运算符30
2.2.3 引用规则30
2.2.4 数字常量31
2.3 读取输入31
2.4 if语句和关系运算符32
2.4.1 elsif语句33
2.4.2 条件运算符33
2.4.3 比较运算符34
2.4.4 defined函数35
2.5 "真"的定义36
2.6 循环语句37
2.7 简单I/O38
2.7.1 读取文件38
2.7.2 写入一个文件40
2.7.3 复制一个文件40
2.8 小结40
2.9 练习41
2.10 资源41
第3章 数组42
3.1 基本数组42
3.1.1 决定数组中的元素个数43
3.1.2 数组示例44
3.1.3 数组表达式44
3.1.4 打印数组45
3.1.5 带有"黑洞"的数组45
3.1.6 引用词(qw)运算符45
3.2 操纵数组结尾45
3.3 splice函数48
3.3.1 splice函数的返回值49
3.3.2 附加splice参数49
3.4 split和join函数50
3.4.1 结算支票簿51
3.4.2 公共split表达式52
3.4.3 join函数53
3.5 数组排序53
3.6 多维数组54
3.7 @ARGV变量54
3.8 English模块54
3.9 小结54
3.10 练习55
3.11 资源56
3.11.1 在线文档56
3.11.2 模块56
第4章 正则表达式57
4.1 基本正则表达式57
4.1.1 修饰符59
4.1.2 字符集59
4.1.3 空白符(\s)61
4.1.4 使用分组来分解行61
4.1.5 处理可选(|)和限制匹配62
4.1.6 条件63
4.1.7 使用正则表达式调试包66
4.1.8 正则表达式元素小结75
4.1.9 构建正则表达式75
4.2 替换76
4.3 grep函数77
4.4 小结77
4.5 练习77
4.6 资源80
4.6.1 正则表达式元素80
4.6.2 调试符号81
4.6.3 在线文档81
第5章 Perl的新语法82
5.1 新且有用的语法82
5.1.1 foreach语句82
5.1.2 变量$_83
5.1.3 "Here-Doc"语法84
5.1.4 die函数85
5.1.5 特殊文件 85
5.1.6 文件测试运算符86
5.1.7 redo运算符87
5.1.8 翻译运算符(tr)87
5.1.9 =左边的数组88
5.2 Perl的不常用语句88
5.2.1 unless语句88
5.2.2 可游荡的if和unless语句89
5.2.3 __DATA__文件89
5.3 小结89
5.4 练习90
5.5 资源90
第6章 散列、引用和复杂数据结构91
6.1 散列91
6.1.1 打印整个散列92
6.1.2 散列的简单读和写93
6.1.3 更复杂的散列读和写94
6.1.4 检查单词是否位于列表中94
6.1.5 使用map函数95
6.1.6 从散列中删除元素96
6.1.7 数组和散列97
6.2 引用97
6.3 将C数据结构翻译成Perl数据结构99
6.3.1 散列作为结构99
6.3.2 散列的数组99
6.3.3 读入日期数组100
6.3.4 数组的数组101
6.3.5 打印复杂数据结构102
6.3.6 复制数据结构102
6.4 小结103
6.5 练习103
6.6 资源104
6.6.1 在线文档104
6.6.2 模块104
第7章 子程序和模块105
7.1 子程序105
7.1.1 参数定义更多说明106
7.1.2 数组和散列参数106
7.1.3 变量长度参数列表107
7.1.4 参数定义小结107
7.1.5 其他参数传递方法108
7.1.6 无参数定义的函数108
7.1.7 local声明108
7.2 包109
7.2.1 创建包文件110
7.2.2 提供外部接口110
7.2.3 use的更多说明113
7.2.4 组织模块114
7.2.5 特殊块(BEGIN, END)114
7.2.6 use与require115
7.3 小结116
7.4 练习116
7.5 资源116
7.5.1 在线文档116
7.5.2 模块116
第8章 面向对象编程117
8.1 将散列用作对象117
8.2 基本Perl对象120
8.2.1 多态121
8.2.2 信息隐藏122
8.3 运算符重载122
8.4 小结127
8.5 练习127
8.6 资源128
8.6.1 在线文档128
8.6.2 模块128
第9章 高级I/O129
9.1 打开文件(温习)129
9.1.1 打开管道129
9.1.2 Open小结130
9.1.3 使用(')运算符130
9.2 sysopen(高级打开)130
9.3 读二进制文件131
9.4 文件处理包133
9.5 给子程序传递文件句柄134
9.6 对文件句柄的引用134
9.7 小结135
9.8 练习135
9.9 资源135
9.9.1 在线文档135
9.9.2 模块135
9.9.3 函数135
第10章 POD137
10.1 POD(无格式旧式文档)137
10.1.1 为程序编写文档137
10.1.2 NAME部分138
10.1.3 SYNOPSIS部分138
10.1.4 DESCRIPTION部分138
10.1.5 OPTIONS部分139
10.1.6 SEE ALSO部分140
10.1.7 检查结果140
10.1.8 将所有部分放在一起140
10.2 将POD转换成其他可读性格式142
10.3 在文件中放置--help选项142
10.4 POD模板143
10.5 小结145
10.6 练习146
10.7 资源146
10.7.1 在线文档146
10.7.2 命令146
第11章 Perl的后台工作147
11.1 使用Perl时到底发生了什么147
11.1.1 use strict的工作方式147
11.1.2 use vars语句148
11.2 Exporter包149
11.3 import和AUTOLOAD的工作方式149
11.4 小结149
11.5 资源149
11.5.1 在线文档149
11.5.2 模块150
第12章 CGI编程151
12.1 简单CGI151
12.2 CGI版本的"Hello World"151
12.3 基本表单154
12.3.1 FORM语句154
12.3.2 文本空白155
12.3.3 选项列表155
12.3.4 复选框156
12.3.5 单选按钮156
12.3.6 文本区域156
12.3.7 隐藏输入157
12.3.8 提交按钮157
12.3.9 组合在一起157
12.4 创建CGI程序158
12.4.1 记录数据160
12.4.2 编写响应160
12.4.3 将各个部分放在一起160
12.5 调试CGI脚本162
12.5.1 解决"Internal Server Error"162
12.5.2 交互式调试163
12.5.3 服务器启动的调试器165
12.6 安全166
12.6.1 Taint模式166
12.6.2 Perl程序是如何崩溃的167
12.7 Cookie168
12.8 小结169
12.9 练习169
12.10 资源169
12.10.1 在线文档169
12.10.2 模块169
12.10.3 网站170
第13章 用Tk创建GUI171
13.1 Tk基础知识171
13.2 Tk窗口小部件172
13.2.1 窗口小部件文档173
13.2.2 使用窗口小部件173
13.2.3 主事件循环174
13.3 几何管理器174
13.3.1 pack175
13.3.2 grid177
13.3.3 place177
13.3.4 form177
13.4 特殊窗口小部件177
13.4.1 滚动条(Scollbar)177
13.4.2 文本(Text)178
13.5 事件(event)179
13.6 一般设计提示179
13.6.1 窗口小部件布局179
13.6.2 先放置再扩展179
13.6.3 使用ptkdb180
13.7 综合起来180
13.8 小结187
13.9 练习187
13.10 资源187
13.10.1 在线文档187
13.10.2 演示188
13.10.3 网站188
第14章 用Inline::C结合C与Perl189
14.1 什么是Inline模块189
14.2 Hello World189
14.3 简单参数和返回值190
14.4 Perl如何处理变量192
14.4.1 访问Perl的SV变量193
14.4.2 使用SV194
14.5 返回多个值196
14.6 从C调用Perl198
14.7 配置Inline199
14.8 生成可发布模块200
14.9 小结200
14.10 练习200
14.11 资源200
14.11.1 在线文档200
14.11.2 模块201
14.11.3 应用程序201
第15章 综合运用202
15.1 Perl和数据库202
15.1.1 MLDBM包202
15.1.2 处理同时数据库访问203
15.2 数据库设计204
15.3 数据库实现204
15.4 disk.pm模块206
15.5 GUI接口219
15.5.1 添加弹出窗口220
15.5.2 查找与再查找221
15.6 CGI版本231
15.6.1 错误与消息234
15.6.2 调试234
15.6.3 Cookie235
15.6.4 调试Cookie236
15.6.5 CGI程序237
15.7 小结244
15.8 练习244
15.9 资源245
15.9.1 在线文档245
15.9.2 模块245
15.9.3 网页245
第16章 实战246
16.1 列表的区别246
16.2 拨号1-800-Confuse-Me249
16.3 时间调整251
16.4 日历程序254
16.4.1 日期格式255
16.4.2 程序255
16.5 复制文件检查器259
16.6 表格格式化263
16.7 日志文件浏览器267
16.8 网站检查器278
16.8.1 解析文件279
16.8.2 孤立文件检测280
16.8.3 外部链接检查281
16.8.4 网站检查器小结281
16.9 对象文件交叉引用系统285
16.9.1 ox-gen.pl286
16.9.2 用ox.pl提取信息290
16.9.3 附加工作292
16.10 计算Web页点击次数292
16.10.1 web.pm模块292
16.10.2 计算点击数298
16.10.3 图示结果299
16.10.4 动态Web页图表304
16.10.5 对Web页计数的注释305
16.11 小结305
16.12 练习306
16.13 资源306
16.13.1 模块306
16.13.2 程序306
第17章 创建模块307
17.1 模块创建过程307
17.1.1 填充文件309
17.1.2 构建模块311
17.1.3 使用自动装载器312
17.2 模块创建详细步骤313
17.3 调试模块316
17.4 小结320
17.5 练习320
17.6 资源321
17.6.1 在线文档321
17.6.2 程序321
17.6.3 模块321
附录A 安装Perl322
附录B 将Perl脚本转换成命令328
附录C Perl题外话332
索 引338
媒体评论