1 / 13
文档名称:

2011-学习资料大全最全正则表达式教程、最好正则表达....doc

格式:doc   页数:13
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

2011-学习资料大全最全正则表达式教程、最好正则表达....doc

上传人:1006108867 2013/10/22 文件大小:0 KB

下载得到文件列表

2011-学习资料大全最全正则表达式教程、最好正则表达....doc

文档介绍

文档介绍:知识改变命运勤奋塑造成功
整理人
落叶
时间
2011-4-15
天才是百分之九十九的勤奋加百分之一的灵感
正则表达式到底是什么东西?
字符是计算机软件处理文字时最基本的单位,可能是字母,数字,标点符号,空格,换行符,汉字等等。字符串是0个或更多个字符的序列。文本也就是文字,字符串。说某个字符串匹配某个正则表达式,通常是指这个字符串里有一部分(或几部分分别)能满足表达式给出的条件。
在编写处理字符串的程序或网页时,经常会有查找符合某些复杂规则的字符串的需要。正则表达式就是用于描述这些规则的工具。换句话说,正则表达式就是记录文本规则的代码。
很可能你使用过Windows/Dos下用于文件查找的通配符(wildcard),也就是*和?。如果你想查找某个目录下的所有的Word文档的话,你会搜索*.doc。在这里,*会被解释成任意的字符串。和通配符类似,正则表达式也是用来进行文本匹配的工具,只不过比起通配符,它能更精确地描述你的需求——当然,代价就是更复杂——比如你可以编写一个正则表达式,用来查找所有以0开头,后面跟着2-3个数字,然后是一个连字号“-”,最后是7或8位数字的字符串(像010-12345678或0376-7654321)。
入门
学习正则表达式的最好方法是从例子开始,理解例子之后再自己对例子进行修改,实验。下面给出了不少简单的例子,并对它们作了详细的说明。
假设你在一篇英文小说里查找hi,你可以使用正则表达式hi。
这几乎是最简单的正则表达式了,它可以精确匹配这样的字符串:由两个字符组成,前一个字符是h,后一个是i。通常,处理正则表达式的工具会提供一个忽略大小写的选项,如果选中了这个选项,它可以匹配hi,HI,Hi,hI这四种情况中的任意一种。
不幸的是,很多单词里包含hi这两个连续的字符,比如him,history,high等等。用hi来查找的话,这里边的hi也会被找出来。如果要精确地查找hi这个单词的话,我们应该使用\bhi\b。
\b是正则表达式规定的一个特殊代码(好吧,某些人叫它元字符,metacharacter),代表着单词的开头或结尾,也就是单词的分界处。虽然通常英文的单词是由空格,标点符号或者换行来分隔的,但是\b并不匹配这些单词分隔字符中的任何一个,它只匹配一个位置。
如果需要更精确的说法,\b匹配这样的位置:它的前一个字符和后一个字符不全是(一个是,一个不是或不存在)\w。
假如你要找的是hi后面不远处跟着一个Lucy,你应该用\bhi\b.*\bLucy\b。
这里,.是另一个元字符,匹配除了换行符以外的任意字符。*同样是元字符,不过它代表的不是字符,也不是位置,而是数量——它指定*前边的内容可以连续重复出现任意次以使整个表达式得到匹配。因此,.*连在一起就意味着任意数量的不包含换行的字符。现在\bhi\b.*\bLucy\b的意思就很明显了:先是一个单词hi,然后是任意个任意字符(但不能是换行),最后是Lucy这个单词。
换行符就是'\n',ASCII编码为10(十六进制0x0A)的字符。
如果同时使用其它元字符,我们就能构造出功能更强大的正则表达式。比如下面这个例子:
0\d\d-\d\d\d\d\d\d\d\d匹配这样的字符串:以0开头,然后是两个数字,然后是一个连字号“-”,最后是8个数字(也就是中国的电话号码。当然,这个例子只能匹配区号为3位的情形)。
这里的\d是个新的元字符,匹配一位数字(0,或1,或2,或……)。-不是元字符,只匹配它本身——连字符或者减号。
为了避免那么多烦人的重复,我们也可以这样写这个表达式:0\d{2}-\d{8}。这里\d后面的{2}({8})的意思是前面\d必须连续重复匹配2次(8次)。
测试正则表达式
其它可用的测试工具:
RegexBuddy
Javascript正则表达式在线测试工具
如果你不觉得正则表达式很难读写的话,要么你是一个天才,要么,你不是地球人。正则表达式的语法很令人头疼,即使对经常使用它的人来说也是如此。由于难于读写,容易出错,所以找一种工具对正则表达式进行测试是很有必要的。
由于在不同的环境下正则表达式的一些细节是不相同的, Framework ,所以,下的工具Regex Tester。 Framework ,然后下载Regex Tester。这是个绿色软件,下载完后打开压缩包,。
下面是Regex Tester运行时的截图:
元字符
现在你已经知道几个很有用的元字符了,如\b,.,*,还有\,比如\s匹配任意的空白符,包括空格,制表符(T

最近更新

2026中共天津市委党校招聘教学科研人员13人考.. 49页

2026中国雄安集团有限公司校园招聘50人参考题.. 49页

2026年廉政廉洁知识测试题(基础题) 14页

2026年廉政知识学习测试题(黄金题型) 14页

2026年中国刑法学考试备考题库及答案(网校专.. 15页

2026年新廉政知识测试题(夺冠) 15页

2026年最新廉政知识测试题(夺冠) 14页

2026年叉车复审考试题库(名校卷) 14页

2026年四川文化艺术学院单招职业技能考试题库.. 45页

2026年地方病控制题库【预热题】 40页

2026年安徽商贸职业技术学院单招综合素质考试.. 45页

2026年山西电力职业技术学院单招职业适应性考.. 44页

2026年广东食品药品职业学院单招职业技能测试.. 46页

2026年护士一级考试题库附答案 40页

C语言程序设计基础单项选择题库精选答案 13页

中铁十七局医院公开招聘工作人员备考题库附答.. 46页

2026年服装教师试题库附答案 42页

小学历史与文化知识竞赛题库100道及答案一套 37页

2026年贵州水利水电职业技术学院单招职业技能.. 46页

2026年江苏网约车人证考试题库及参考答案1套 29页

2026年沧州社区招聘考试题库附答案 42页

2026年河南特招中医考试题库附答案 38页

项目建议书编制流程建议书 6页

面部护理建议书 5页

青年员工发展指导建议书 5页

2026年浑南消防文员笔试题库附答案 40页

院长沟通建议书 5页

2025年湖南省建设工程工程量清单计价办法(新).. 51页

六年级英语上册第一单元测试题-(含答案) 9页

喝酒给老婆的检讨书 6页