下载此文档

正则表达式基础教程.docx


文档分类:IT计算机 | 页数:约17页 举报非法文档有奖
1/17
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/17 下载此文档
文档列表 文档介绍
正则表达式基础教程.docx正则表达式基础教程目录本文目标 2如何使用本教程 23•正则表达式到底是什么? 24•入门 3测试正则表达式 4元字符 5字符转义 6重复 6字符类 6反义 711•替换 813•后向引用 1015•负向零宽断言 10注释 11贪婪与懒惰 11处理选项 12平衡组/递归匹配 13还有些什么东西没提到 141•本文目标30分钟内让你明白正则表达式是什么,并对它有一些基本的了解,让你可以在自己的程序或网页里使用它。,只要跟着我一步一步来,你会发现正则表达式其实并没有你想像屮的那么困难。当然,如果你看完了这篇教程之后,发现自己明白了很多,却又几乎什么都记不得,那也是很正常的——我认为,没接触过正则表达式的人在看完这篇教程后,能把提到过的语法记住80%以上的可能性为零。这里只是讣你明白基本的原理,以后你还需要多练****多使用,才能熟练掌握正则表达式。除了作为入门教程之外,木文还试图成为可以在日常工作中使用的正则表达式语法参考手册。就作者本人的经历来说,这个FI标还是完成得不错的——你看,我自己也没能把所有的东西记下來,不是吗?文本格式约定专业术语丿匕字符/语法格式止则表达式止则表达式屮的•-部分(用于分析)?在编写处理字符串的程序或网页吋,经常'会有查找符合某些复杂规则的字符串的需要。正则表达式就是用于描述这些规则的工具。换句话说,正则表达式就是记录文本规则的代码。很可能你使用过Windows/Dos下用于文件查找的通配符(w订dcard),也就是*和?。如果你想查找某个Fl录下的所有的Word文档的话,你会搜索*・doc。在这里,*会被解释成任意的字符串。和通配符类似,正则表达式也是用来进行文本匹配的工具,只不过比起通配符,它能更精确地描述你的需求——当然,代价就是更复杂——比如你可以编写一个正则表达式,用来查找所有以0开头,后面跟着2-3个数字,然后是•个连字号“-”,最后是7或8位数字的字符串(像010-12345678或0376-7654321)。正则表达式是用于进行文本匹配的工具所以本文里多次提到了在字符出里搜索/査找,这种说法的意思是在给定的字符出小,寻找与给定的正则表达式相匹配的部分。有可能字符串里有不止一•个部分满足给定的止则表达式,这时每一个这样的部分被称为一个匹配。匹配在木文里可能会有三种意思:一种是形容词性的,比如说一个字符串匹配一个表达式;一种是动词性的,比如说在字符出里匹配正则表达式;还有一种是名词性的,就是刚刚说到的“字符串小满足给定的正则表达式的一部分”。4•入门学****正则表达式的最好方法是从例子开始理解例子z后再自己对例子进行修改,实验。下面给出了不少简单的例子,并对它们作了详细的说明。假设你在一篇英文小说里查找且,你可以使用正则表达式“。这是最简单的正则表达式了,它可以精确匹配这样的字符审:由两个字符组成,前•个字符是h,后•个是i。通常,处理正则表达式的工具会提供一个忽略大小写的选项,如果选屮了这个选项,它可以匹配hmi这四种情况屮的任意一种。不幸的是,很多单词里包含加这两个连续的字符,比如him,history,high等等。H]hi来查找的话,这里边的加也会被找出来。如果要精确地查找hi这个单词的话,我们应该使用\bhi\bo\b是正则表达式规定的一个特殊代码(好吧,某些人叫它元字符,metacharacter),代表着单词的开头或结尾,也就是单词的分界处。虽然通常英文的单词是由空格或标点符号或换行来分隔的,但是\b并不匹配这些单词分隔符屮的任何一个,它只匹配一个位置。(如果需要更精确的说法,\b匹配这样的位置:它的前一个字符和后一个字符不全是(一个是,一个不是或不存在)\w)假如你要找的是hi后面不远处跟着•个Lucy,你应该用\bhi\b.*\bLucy\bo这里,•是另一个元字符,匹配除了换行符以外的任意字符。*同样是元字符,不过它代表的不是字符,也不是位置,而是数量——它指定*前边的内容可以连续重复出现任意次以使整个表达式得到匹配。因此,・*连在_起就意味着任意数量的不包含换行的字符。现在\bhi\b.*\bLucy\b的意思就很明显了:先是…个单词hi,然后是任意个任意字符(但不能是换行),最后是Lucy这个单词。如果同吋使用其它的一些兀字符,我们就能构造出功能更强大的正则表达式。比如下面这个例子:O\d\d-\d\d\d\d\d\d\d\d匹配这样的字符申:以0开头,然后是两个数字,然后是…个连字号“-”,最后是8个数字他就是屮国的电话号码。当然,这个例子只能匹配区号为3位的情形)。这里的\d是―•个新的元字符,匹配任意的数字(0

正则表达式基础教程 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数17
  • 收藏数0 收藏
  • 顶次数0
  • 上传人sssmppp
  • 文件大小102 KB
  • 时间2020-09-26
最近更新