正则指引
正则指引
基本信息
作者:余晟[作译者介绍]
出版社:电子工业出版社
ISBN:9787121165511
上架时间:2012-5-2
出版日期:2012年5月
开本:16开
页码:315
版次:1-1
所属分类: 计算机 > 软件与程序设计 > 综合 > 综合更多详情》》》《正则指引》
内容简介
计算机书籍
《正则指引》针对作者在开发中遇到的实际问题,以及其他开发人员咨询的问题,总结出一套使用正则表达式解题的办法,并通过具体的例子指导读者拆解、分析问题。全书分为三大部分:第一部分主要讲解正则表达式的基础知识,涵盖了常见正则表达式中的各种功能和结构;第二部分主要讲解关于正则表达式的更深入的知识,详细探讨了编码问题、匹配原理、解题思路;第三部分将之前介绍的各种知识落实到6种常用语言.net、java、javascript、php、python、ruby中,不但详细介绍了语言中正则表达式的用法,更点明了版本之间的细微差异,既可以作为专门学习的教材,也可以作为有用的参考手册。
《正则指引》适合经常需要进行文本处理(比如日志分析或网络运维)的技术人员、熟悉常用开发语言的程序员,以及已经对正则表达式有一定了解的读者阅读。
目录
《正则指引》
第一部分
第1章字符组2
1.1普通字符组2
1.2关于python的基础知识4
1.3普通字符组(续)6
1.4元字符与转义8
1.5排除型字符组10
1.6字符组简记法12
1.7字符组运算14
1.8posix字符组15
第2章量词17
2.1一般形式17
2.2常用量词18
2.3数据提取21
2.4点号23
2.5滥用点号的问题23
2.6忽略优先量词26
2.7转义31
第3章括号33
.3.1分组33
3.2多选结构39
3.3引用分组44
3.3.1反向引用48
3.3.2各种引用的记法50
3.3.3命名分组53
3.4非捕获分组54
3.5补充55
3.5.1转义55
3.5.2urlrewrite56
3.5.3一个例子58
第4章断言59
4.1单词边界59
4.2行起始/结束位置61
4.3环视68
4.4补充74
4.4.1环视的价值74
4.4.2环视与分组编号74
4.4.3环视的支持程度75
4.4.4环视的组合77
4.4.5断言和反向引用之间的关系79
第5章匹配模式81
5.1不区分大小写模式81
5.1.1模式的指定方式82
5.2单行模式84
5.3多行模式85
5.4注释模式87
5.5补充88
5.5.1更多的模式88
5.5.2修饰符的作用范围89
5.5.3失效修饰符90
5.5.4模式与反向引用90
5.5.5冲突策略91
5.5.6哪种方式更好92
第6章其他93
6.1转义93
6.1.1字符串转义与正则转义93
6.1.2元字符的转义97
6.1.3彻底消除元字符的特殊含义99
6.1.4字符组中的转义101
6.2正则表达式的处理形式101
6.2.1函数式处理102
6.2.2面向对象式处理102
6.2.3比较103
6.2.4线程安全性104
6.3表达式中的优先级106
第二部分
第7章unicode110
7.1关于编码110
7.2推荐使用unicode编码111
7.3unicode匹配规则115
7.4单词边界117
7.5码值119
7.6unicode属性121
7.6.1unicodeproperty121
7.6.2unicodeblock122
7.6.3unicodescript123
7.7unicode属性列表123
7.7.1unicodeproperty123
7.7.2unicodeblock125
7.7.3unicodescript128
7.8posix字符组129
第8章匹配原理130
8.1有穷自动机130
8.2正则表达式的匹配过程131
8.3回溯134
8.4nfa和dfa136
第9章常见问题的解决思路138
9.1关于元素的三种逻辑138
9.1.1必须出现139
9.1.2可能出现139
9.1.3不能出现140
9.2正则表达式的常见操作142
9.2.1提取142
9.2.2验证148
9.2.3替换152
9.2.4切分157
9.3正则表达式的优化建议159
9.3.1使用缓存159
9.3.2尽量准确地表达意图160
9.3.3避免重复匹配160
9.3.4独立出文本和锚点161
9.4别过分依赖正则表达式162
9.4.1彻底放弃字符串操作162
9.4.2思维定势163
9.4.3正则表达式可以匹配各种文本164
第三部分
第10章.net168
10.1预备知识168
10.2正则功能详解169
10.2.1列表169
10.2.2字符组170
10.2.3unicode属性170
10.2.4字符组简记法171
10.2.5单词边界171
10.2.6行起始/结束位置172
10.2.7环视173
10.2.8匹配模式173
10.2.9捕获分组的引用174
10.3正则api简介175
10.3.1regex175
10.3.2match179
10.4常用操作示例180
10.4.1验证180
10.4.2提取180
10.4.3替换181
10.4.4切分182
第11章java183
11.1预备知识183
11.2正则功能详解184
11.2.1列表184
11.2.2字符组184
11.2.3unicode属性186
11.2.4字符组简记法186
11.2.5单词边界186
11.2.6行起始/结束位置187
11.2.7环视188
11.2.8匹配模式188
11.2.9纯文本模式189
11.2.10捕获分组的引用189
11.3正则api简介189
11.3.1pattern190
11.3.2matcher192
11.3.3string194
11.4常用操作示例195
11.4.1验证195
11.4.2提取196
11.4.3替换196
11.4.4切分197
第12章javascript198
12.1预备知识198
12.2正则功能详解199
12.2.1列表199
12.2.2字符组199
12.2.3字符组简记法200
12.2.4单词边界200
12.2.5行起始/结束位置201
12.2.6环视201
12.2.7匹配模式202
12.2.8捕获分组的引用203
12.3正则api简介203
12.3.1regexp203
12.3.2string207
12.4常用操作示例210
12.4.1验证210
12.4.2提取210
12.4.3替换211
12.4.4切分211
12.5关于actionscript211
12.5.1regexp211
12.5.2匹配规则212
12.5.3匹配模式212
12.5.4正则api212
第13章php213
13.1预备知识213
13.2正则功能详解215
13.2.1列表215
13.2.2字符组216
13.2.3unicode属性217
13.2.4字符组简记法217
13.2.5单词边界217
13.2.6行起始/结束位置218
13.2.7环视219
13.2.8匹配模式219
13.2.9纯文本模式220
13.2.10捕获分组的引用220
13.3正则api简介221
13.3.1preg常量说明221
13.3.2preg_quote222
13.3.3preg_grep223
13.3.4preg_match223
13.3.5preg_match_all225
13.3.6preg_last_error227
13.3.7preg_replace227
13.3.8preg_replace_callback227
13.3.9preg_filter228
13.3.10preg_split229
13.4常见的正则操作举例230
13.4.1验证230
13.4.2提取230
13.4.3替换231
13.4.4切分232
第14章python233
14.1预备知识233
14.2正则功能详解234
14.2.1列表234
14.2.2字符组235
14.2.3unicode属性236
14.2.4字符组简记法236
14.2.5单词边界238
14.2.6行起始/结束位置239
14.2.7环视239
14.2.8匹配模式240
14.2.9捕获分组的引用240
14.3正则api简介241
14.3.1regexobject241
14.3.2re.compile(regex[,flags])243
14.3.3re.search(pattern,string[,flags])243
14.3.4matchobject243
14.3.5re.match(pattern,string[,flags])244
14.3.6re.findall(pattern,sting[,flags])245
14.3.7re.finditer(pattern,string[,flags])245
14.3.8re.split(pattern,string[,maxsplit=0,flags=0])246
14.3.9re.sub(pattern,repl,string[,count,flags])247
14.4常用操作示例248
14.4.1验证248
14.4.2提取248
14.4.3替换249
14.4.4切分250
第15章ruby251
15.1预备知识251
15.2正则功能详解252
15.2.1列表252
15.2.2字符组252
15.2.3unicode属性253
15.2.4字符组简记法254
15.2.5单词边界254
15.2.6行起始/结束位置255
15.2.7环视256
15.2.8匹配模式256
15.2.9捕获分组的引用257
15.3正则api简介257
15.3.1regexp257
15.3.2regexp.match(text)259
15.3.3regexp.quote(text)和regexp.escape(text)260
15.3.4string.index(regexp)261
15.3.5string.scan(regexp)261
15.3.6string.slice(regexp)262
15.3.7string.split(regexp)262
15.3.8string.sub(regexp,str)263
15.3.9string.gsub(regexp,string)264
15.4常用操作示例264
15.4.1验证264
15.4.2提取265
15.4.3替换265
15.4.4切分265
15.5ruby1.9的新变化266
第16章linux/unix268
16.1posix268
16.1.1posix规范268
16.1.2posix字符组269
16.2vi271
16.2.1字符组及简记法271
16.2.2量词272
16.2.3多选结构和捕获分组272
16.2.4环视273
16.2.5锚点和单词边界273
16.2.6替换操作的特殊字符274
16.2.7replacement中的特殊变量276
16.2.8补充276
16.3grep277
16.3.1基本用法277
16.3.2字符组277
16.3.3锚点和单词边界278
16.3.4量词278
16.3.5多选结构和捕获分组279
16.3.6options279
16.3.7egrep和fgrep280
16.3.8补充280
16.4awk281
16.4.1基本用法281
16.4.2字符组及简记法282
16.4.3锚点和单词边界283
16.4.4量词283
16.4.5多选结构284
16.4.6补充284
16.5sed284
16.5.1基本用法284
16.5.2字符组及简记法285
16.5.3锚点和单词边界285
16.5.4量词286
16.5.5多选结构和捕获分组286
16.5.6options286
16.5.7补充287
16.6总结288
附录a常用语言中正则特性一览291
附录b常用的正则表达式293
附录c常用的正则表达式工具及资源309
本图书来源于:中国互动出版网