精通正则表达式.pdf

精通正则表达式.pdf
 

书籍描述

编辑推荐
《精通正则表达式(第3版)》由电子工业出版社出版。

名人推荐
“如果你的工作需要用到正则表达式(即便你已经有本很不错的关于开发语言的书),我还是要向你强烈推荐本书。”
——Dr.Chris Brown,Linux Format
“毫不夸张地说,《精通正则表达式(第3版)》是学习该工具的不二选择,也是每个程序员必备的杰作。”
——Jason Menard.Java Ranch
“所有关于正则表达式的书中,找不到比这更好的了。”
——Zak Greant,Planet PHP

作者简介
作者:(美国)杰佛瑞E.F.佛瑞德(Jeffrey E.F.Friedl) 译者:余晟

目录
前言
第1章:正则表达式入门
解决实际问题
作为编程语言的正则表达式
以文件名做类比
以语言做类比
理解正则表达式的结构
对于有部分经验的读者
检索文本文件:Egrep
Egrep元字符
行的起始和结束
字符组
用点号匹配任意字符
多选结构
忽略大小写
单词分界符
小结
可选项元素
其他量词:重复出现
括号及反向引用
神奇的转义
基础知识拓展
语言的差异
正则表达式的目标
更多的例子
正则表达式术语汇总
改进现状
总结
一家之言
第2章:入门示例拓展
关于这些例子
Perl简单入门
使用正则表达式匹配文本
向更实用的程序前进
成功匹配的副作用
错综复杂的正则表达式
暂停片刻
使用正则表达式修改文本
例子:公函生成程序
举例:修整股票价格
自动的编辑操作
处理邮件的小工具
用环视功能为数值添加逗号
Text—to—HTML转换
回到单词重复问题
第3章:正则表达式的特性和流派概览
在正则的世界中漫步
正则表达式的起源
最初印象
正则表达式的注意事项和处理方式
集成式处理
程序式处理和面向对象式处理
查找和替换
其他语言中的查找和替换
注意事项和处理方式:小结
字符串,字符编码和匹配模式
作为正则表达式的字符串
字符编码
Unicode
正则模式和匹配模式
常用的元字符和特性
字符表示法
字符组及相关结构
锚点及其他“零长度断言”
注释和模式修饰符
分组,捕获,条件判断和控制
高级话题引导
第4章:表达式的匹配原理
发动引擎
两类引擎
新的标准
正则引擎的分类
几句题外话
测试引擎的类型
匹配的基础
关于范例
规则1:优先选择最左端的匹配结果
引擎的构造
规则2:标准量词是匹配优先的
表达式主导与文本主导
NFA引擎:表达式主导
DFA引擎:文本主导
第一想法:比较NFA与DFA
回溯
真实世界中的例子:面包屑
回溯的两个要点
备用状态
回溯与匹配优先
关于匹配优先和回溯的更多内容
匹配优先的问题
多字符“引文”
使用忽略优先量词
匹配优先和忽略优先都期望获得匹配
匹配优先、忽略优先和回溯的要旨
占有优先量词和固化分组
占有优先量词,?+、*+、++和{m,n}+
环视中的回溯
多选结构也是匹配优先的吗
发掘有序多选结构的价值
……
第5章:正则表达式实用技巧
第6章:打造高效正则表达式
第7章:Perl
第8章:Java
第9章:NET
第10章:PHP

文摘
版权页:

精通正则表达式

插图:

精通正则表达式

一种类型的环视叫“顺序环视(lookahead)”,作为表达式的一部分,顺序环视顺序(从左至右)查看文本,尝试匹配子表达式,如果能够匹配,就返回匹配成功信息。肯定型顺序环视(positive lookahread)用特殊的序列(?=…)来表示,例如(?=\d),它表示如果当前位置右边的字符是数字则匹配成功。另一种环视称为逆序环视,它逆序(从右向左)查看文本。它用特殊的序列(?<=…)表示,例如(?<=\d),如果当前位置的左边有一位数字,则匹配成功(也就是说,紧跟在数字后面的位置)。
环视不会“占用”字符
在理解顺序环视和其他环视功能时需要特别注意一点,即在检查子表达式能否匹配的过程中,它们本身不会“占用”任何文本。这可能有点难懂,所以我准备了下面的例子。正则表达式Jeffrey匹配:
但同样的正则表达式,如果使用顺序环视功能,即(?=Jeffrey),则匹配标记的位置:
顺序环视会检查子表达式能否匹配,但它只寻找能够匹配的位置,而不会真正“占用”这些字符。不过,把顺序环视和真正匹配字符的部分——例如Jeff——结合起来,我们能得到比单纯的Jeff更精确的结果。结合之后的正则表达式是(?=Jeffrey)Jeff,下一页的图说明,它只能匹配“Jeffrey”这个单词中的“Jeff”。它能够匹配:
在此处它的匹配和单纯的Jeff一样,但是下面的情况不会匹配:
Jeff自己能够匹配这一行,但是因为不存在(?=Jeffrey)能够匹配的位置,整个表达式就无法匹配。现在环视的好处还看得不是很明显,但是请不用担心,现在我们只需要关心顺序环视的原理——我们很快会遇到能够充分展现其价值的例子。

内容简介
《精通正则表达式(第3版)》内容简介:随着互联网的迅速发展,几乎所有工具软件和程序语言都支持的正则表达式也变得越来越强大和易于使用。《精通正则表达式(第3版)》是讲解正则表达式的经典之作。《精通正则表达式(第3版)》主要讲解了正则表达式的特性和流派、匹配原理、优化原则、实用诀窍以及调校措施,并详细介绍了正则表达式在Perl、Java、.NET、PHP中的用法。《精通正则表达式(第3版)》自第1版开始着力于教会读者“以正则表达式来思考”,来让读者真正“精通”正则表达式。该版对PHP的相关内容、Javal.5和Javal.6的新特性作了可观的扩充讲解。任何有机会仲用正则表达式的读者都会从中获益匪浅。

购买书籍

当当网购书 京东购书 卓越购书

PDF电子书下载地址

相关书籍

搜索更多