《Mastering Regular Expressions》读书笔记.doc_第1页
《Mastering Regular Expressions》读书笔记.doc_第2页
免费预览已结束,剩余2页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

其他范文/读书笔记 mastering regular expressions读书笔记 近段涉及到了数据的解析,自然离不开对regular expressions(正则表达式)的温习;在jdk官方源码中看到了对mastering regular expressions, 2nd edition的推荐;由jeffrey e.f. friedl大师主刀,oreilly于xx年再版。对oreilly的书向有好感,像当年误入java的歧途,没看java编程思想之类的,倒看了oreilly的一本影印版java in a nutshell,颇留记忆。 正则表达式的“祖先”可以一直上溯至对人类神经系统如何工作的早期研究。warren mcculloch 和 walter pitts 这两位神经生理学家研究出一种数学方式来描述这些神经网络。1956 年, 一位叫 stephen kleene 的数学家在 mcculloch 和 pitts 早期工作的基础上,发表了一篇标题为“神经网事件的表示法”的论文,引入了正则表达式的概念。正则表达式就是用来描述他称为“正则集的代数”的表达式,因此采用“正则表达式”这个术语。 随后,发现可以将这一工作应用于使用 ken thompson 的计算搜索算法的一些早期研究,ken thompson 是 unix 的主要发明人。正则表达式的第一个实用应用程序就是 unix 中的 qed 编辑器。 目前,正则表达式已经在很多软件中得到广泛的应用,包括*nix(linux, unix等),hp等操作系统;php,perl,python,c#,java等开发环境,以及很多的应用软件中,for example:网络上的搜索引擎,数据库的全文检索etc. 本笔记是是自我学习过程的一个整理,例子或*于书本,或自己枚举。好了,废话一箩筐,切入正题。 1、正则表达式的介绍 1.1、行开始和结束 begin line。匹配行开头,如cat匹配以cat开头的 $end line。匹配行结束,如cat$匹配以cat结束的;cat$仅仅匹配该行有cat 1.2、匹配给定的字符序列 .,表示in。里面写入欲匹配的几个字符,如,匹配seperate,separete,separate;匹配, , , etc.a-z代表从a到z中的任意字符,0-9、a-z分别代表0-9,a-z中的任意数字或大写字母;“-”代表连续的从开始字符到结束;那么0123456789abcdefabcdef也可以写为0-9a-fa-f;对于这些频繁使用的字符,各语言分别做了相同的预定义: 1.3、匹配非给定的字符(非.) 匹配,表示not。和行开头的标记完全一样,但写的位置不一样,则表述的意思可能完全相反,用表示否定的意思,更多是写在里面,如:qu匹配q后面紧跟非u的字符,如iraqi,qasida,zaqqum,iraq;没错,iraq这个单词也会被匹配,尽管q后面什么也没有,也可能有个空格、或回车符等。否定字符的意思(翻译出来绕口):means match a character thats not listed and not dont match what is listed. 1.4、匹配任何字符 .匹配,表示any。任何字符,如07.04匹配:07_04,07-04,07 04,07.04 etc;如想要精确匹配07/04,07-04,or 07.04;需要写07-./04;没错当.在里面包含的时候,仅仅表示“.”字符而已,如果不在里面,需要转

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论