下载地址:
下载地址1资源简介:
中文名: 精通正则表达式(第3版)高清PDF中文版作者: (美)佛瑞德(Friedl,J.E.F.)译者: 余晟资源格式: PDF版本: 扫描版出版社: 电子工业出版社书号: 9787121046841发行时间: 2007年07月01日地区: 大陆语言: 简体中文简介: 编辑推荐十年三版,再显王者风范,近30年开发经验的智慧结晶,深入理解正则表达式,彻底修炼基本功,全球第一本全面深入讲解正则表达式的经典巨著,《程序员》杂志技术主编孟岩鼎力推荐。内容简介随着互联网的迅速发展,几乎所有工具软件和程序语言都支持的正则表达式也变得越来越强大和易于使用。本书是讲解正则表达式的经典之作。本书主要讲解了正则表达式的特性和流派、匹配原理、优化原则、实用诀窍以及调校措施,并详细介绍了在Perl、Java、.NET、PHP中正则表达式的用法。本书自第一版开始着力于教会读者 “以正则表达式来思考”,来让读者真正“精通”正则表达式。该版对PHP的相关内容、Java1.5和Java1.6的新特性作了可观的扩充讲解。任何有机会使用正则表达式的读者都将因本书而受益匪浅。作者简介Jeffrey E.F.Friedl生长于俄亥俄州Rootstown的乡村,小时候希望成为天文学家,直到有一天他发现了闲置在化学实验室角落里的TRS-80 Model I(装备了整整16KB RAM)。1980年他终于开始使用Unix(和正则表达式)。在肯特(Kent)大学和新罕布什尔(New Hampshire)大学分别获得计算机学士和硕士学位之后,他在日本京都工作了8年,为欧姆龙公司(Omron Corporation)进行核心开发,1997年迁居硅谷,在当时还不为人知的Yahoo!用正则表达式处理财经新闻和数据。2004年4月他偕妻儿返回京都。Friedl的闲暇时间很充裕,这时候他喜欢与妻子Fumie和3岁的活蹦乱跳的儿子Anthony一起。他还喜欢拍摄遍布京都的美景,照片在他的blog上:http://regex.info/blog。 目录: 前言.第1章:正则表达式入门 1解决实际问题 2作为编程语言的正则表达式 4以文件名做类比 4以语言做类比 5正则表达式的知识框架 6对于有部分经验的读者 6检索文本文件:egrep 6egrep元字符 8行的起始和结束 8字符组 9用点号匹配任意字符 11多选结构 13忽略大小写 14单词分界符 15小结 16可选项元素 17其他量词:重复出现 18括号及反向引用 20.神奇的转义 22基础知识拓展 23语言的差异 23正则表达式的目标 23更多的例子 23正则表达式术语汇总 27改进现状 30总结 32一家之言 33第2章:入门示例拓展 35关于这些例子 36perl简短入门 37使用正则表达式匹配文本 38向更实用的程序前进 40成功匹配的副作用 40错综复杂的正则表达式 43暂停片刻 49使用正则表达式修改文本 50例子:公函生成程序 50举例:修整股票价格 51自动的编辑操作 53处理邮件的小工具 53用环视功能为数值添加逗号 59text-to-html转换 67回到单词重复问题 77第3章:正则表达式的特性和流派概览 83在正则的世界中漫步 85正则表达式的起源 85最初印象 91正则表达式的注意事项和处理方式 93集成式处理 94程序式处理和面向对象式处理 95查找和替换 98其他语言中的查找和替换 100注意事项和处理方式:小结 101字符串,字符编码和匹配模式 101作为正则表达式的字符串 101字符编码 105正则模式和匹配模式 110常用的元字符和特性 113字符表示法 115字符组及相关结构 118锚点及其他“零长度断言” 129注释和模式量词 135分组,捕获,条件判断和控制 137高级话题引导 142第4章:表达式的匹配原理 143发动引擎 143两类引擎 144新的标准 144正则引擎的分类 145几句题外话 146测试引擎的类型 146匹配的基础 147关于范例 147规则1:优先选择最左端的匹配结果 148引擎的构造 149规则2:标准量词是匹配优先的 151表达式主导与文本主导 153nfa引擎:表达式主导 153dfa引擎:文本主导 155第一想法:比较nfa与dfa 156回溯 157真实世界中的例子:面包屑 158回溯的两个要点 159备用状态 159回溯与匹配优先 162关于匹配优先和回溯的更多内容 163匹配优先的问题 164多字符“引文” 165使用忽略优先量词 166匹配优先和忽略优先都期望获得匹配 167匹配优先、忽略优先和回溯的要旨 168占有优先量词和固化分组 169占有优先量词,?+、*+、++和{m,n}+ 172环视的回溯 173多选结构也是匹配优先的吗 174发掘有序多选结构的价值 175nfa、dfa和posix 177最左最长规则 177posix和最左最长规则 178速度和效率 179小结:nfa与dfa的比较 180总结 183第5章:正则表达式实用技巧 185正则表达式的平衡法则 186若干简单的例子 186匹配连续行(续前) 186匹配ip地址 187处理文件名 190匹配对称的括号 193防备不期望的匹配 194匹配分隔符之内的文本 196了解数据,做出假设 198去除文本首尾的空白字符 199html相关范例 200匹配html tag 200匹配html link 201检查http url 203验证主机名 203在真实世界中提取url 206扩展的例子 208保持数据的协调性 209解析csv文件 213第6章:打造高效正则表达式 221典型示例 222稍加修改——先迈最好使的腿 223效率vs准确性 223继续前进——限制匹配优先的作用范围 225实测 226全面考查回溯 228posix nfa需要更多处理 229无法匹配时必须进行的工作 230看清楚一点 231多选结构的代价可能很高 231性能测试.. 232理解测量对象 234php测试 234java测试 235vb.net测试 237ruby测试 238python测试 238tcl测试 239常见优化措施 240有得必有失 240优化各有不同 241正则表达式的应用原理 241应用之前的优化措施 242通过传动装置进行优化 246优化正则表达式本身 247提高表达式速度的诀窍 252常识性优化 254将文字文本独立出来 255将锚点独立出来 256忽略优先还是匹配优先?具体情况具体分析 256拆分正则表达式 257模拟开头字符识别 258使用固化分组和占有优先量词 259主导引擎的匹配 260消除循环 261方法1:依据经验构建正则表达式 262真正的“消除循环”解法 264方法2:自顶向下的视角 266方法3:匹配主机名 267观察 268使用固化分组和占有优先量词 268简单的消除循环的例子 270消除c语言注释匹配的循环 272流畅运转的表达式 277引导匹配的工具 277引导良好的正则表达式速度很快 279完工 281总结:开动你的大脑 281第7章:perl 283作为语言组件的正则表达式 285perl的长处 286perl的短处 286perl的正则流派 286正则运算符和正则文字 288正则文字的解析方式 292正则修饰符 292正则表达式相关的perl教义 293表达式应用场合 294动态作用域及正则匹配效应 295匹配修改的特殊变量 299qr/…/运算符与regex对象 303构建和使用regex对象 303探究regex对象 305用regex对象提高效率 306match运算符 306match的正则运算元 307指定目标运算元 308match运算符的不同用途 309迭代匹配:scalar context,不使用/g 312match运算符与环境的关系 316substitution运算符 318运算元replacement 319/e修饰符 319应用场合与返回值 321split运算符 321split基础知识 322返回空元素 324split中的特殊regex运算元 325split中带捕获型括号的match运算元 326巧用perl的专有特性 326用动态正则表达式结构匹配嵌套结构 328使用内嵌代码结构 331在内嵌代码结构中使用local函数 335关于内嵌代码和my变量的忠告 338使用内嵌代码匹配嵌套结构 340正则文字重载 341正则文字重载的问题 344模拟命名捕获 344效率 347办法不只一种 348表达式编译、/o修饰符、qr/···/和效率 348理解“原文”副本 355study函数 359性能测试 360正则表达式调试信息 361结语 363第8章:java 365java的正则流派 366java对\p{…}和\p{…}的支持 369unicode行终结符 370使用java.util.regex 371the pattern.compile() factory 372pattern的matcher方法 373matcher对象 373应用正则表达式 375查询匹配结果 376简单查找-替换 378高级查找-替换 380原地查找-替换 382matcher的检索范围 384方法链 389构建扫描程序 389matcher的其他方法 392pattern的其他方法 394pattern的split方法,单个参数 395pattern的split方法,两个参数 396拓展示例 397为image tag添加宽度和高度属性 397对于每个matcher,使用多个pattern校验html 399解析csv文档 401java版本差异 4011.4.2和1.5.0之间的差异 4021.5.0和1.6之间的差异 403第9章:.net 405.net的正则流派 406对于流派的补充 409使用.net正则表达式 413正则表达式快速入门 413包概览 415核心对象概览 416核心对象详解 418创建regex对象 419使用regex对象 421使用match对象 427使用group对象 430静态“便捷”函数 431正则表达式缓存 432支持函数 432.net高级话题 434正则表达式装配件 434匹配嵌套结构 436capture对象 437第10章:php 439php的正则流派 441preg函数接口 443“pattern”参数 444preg函数罗列 449preg_match 449preg_match_all 453preg_replace 458preg_replace_callback 463preg_split 465preg_grep 469preg_quote 470“缺失”的preg函数 471对未知的pattern参数进行语法检查 474对未知正则表达式进行语法检查 475递归的正则表达式 475匹配嵌套括号内的文本 475不能回溯到递归调用之内 477匹配一组嵌套的括号 478php效率 478模式修饰符s:“研究” 478扩展示例 480用php解析csv 480检查tagged data的嵌套正确性 481索引... 485
飞网下载站,免费下载共享资料,内容涉及教育资源、专业资料、IT资源、娱乐生活、经济管理、办公文书、游戏资料等。