正则表达式释疑(regular-expression)

正则表达式释疑(regular-expression)

ID:37566043

大小:267.36 KB

页数:24页

时间:2019-05-25

正则表达式释疑(regular-expression)_第1页
正则表达式释疑(regular-expression)_第2页
正则表达式释疑(regular-expression)_第3页
正则表达式释疑(regular-expression)_第4页
正则表达式释疑(regular-expression)_第5页
资源描述:

《正则表达式释疑(regular-expression)》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、搜集整理:www.it586.com北京网站建设网google网站推广正则表达式释疑一、简介正则表达式这个名词,相信很多人都听说过,这个名词最早起源于1956年,一位叫StephenKleene的美国数学家在McCulloch和Pitts早期工作的基础上,发表了一篇标题为“神经网事件的表示法”的论文,引入了正则表达式的概念。正则表达式就是用来描述他称为“正则集的代数”的表达式,因此采用“正则表达式”这个术语。随后,发现可以将这一工作应用于使用KenThompson的计算搜索算法的一些早期研究,KenThompson是Unix的主要发明人。正则表达

2、式的第一个实用应用程序就是Unix中的qed编辑器。Q:正则表达式,能够为我们做什么呢?A:基于文本的编辑器和搜索工具中的一个重要部分。正则表达式可以让用户通过使用一系列的特殊字符构建匹配模式,然后把匹配模式与数据文件、程序输入以及WEB页面的表单输入等目标对象进行比较,根据比较对象中是否包含匹配模式,执行相应的程序。下面我们就一步一步的结合它的语法,来介绍正则表达式的使用。二、初次接触正则表达式我们先来了解正则表达式的一些基本概念。正则表达式作为一种表示语言,其定义了自己的一套描述方式,来描述各种各样的字符类。下面摘取msdn中的一段定义。(m

3、s-help://MS.VSCC/MS.MSDNVS.2052/cpgenref/html/cpconcharacterclasses.htm)字符转义表字符类含义.与除以外的任何字符匹配。如果通过Singleline选项(请参阅正则表达式选项)进行了修改,则句点字符与任何字符匹配。[aeiou]与指定字符集中包含的任何单个字符匹配。[^aeiou]与不在指定字符集中的任何单个字符匹配。[0-9a-fA-F]使用连字号(–)允许指定连续字符范围。p{name}1北京网站建设网www.it586.com网站推广google推广google优化

4、google网站排名专家搜集整理:www.it586.com北京网站建设网google网站推广与name指定的命名字符类中的任何字符匹配。支持的名称为Unicode组和块范围。例如Ll£?Nd£?Z£?IsGreek£?IsBoxDrawing。P{name}与在{name}中指定的组和块范围中未包含的文本匹配。w与任何单词字符匹配。等效于Unicode字符类别[p{Ll}p{Lu}p{Lt}p{Lo}p{Nd}p{Pc}]。如果通过ECMAScript选项指定了符合ECMAScript的行为,则w等同于[a-zA-Z_0-9]

5、。W与任何非单词字符匹配。等效于Unicode类别[^p{Ll}p{Lu}p{Lt}p{Lo}p{Nd}p{Pc}]。如果通过ECMAScript选项指定了符合ECMAScript的行为,则W等同于[^a-zA-Z_0-9]。s与任何空白字符匹配。等效于Unicode字符类别[frtvx85p{Z}]。如果通过ECMAScript选项指定了符合ECMAScript的行为,则s等同于[frtv]。S与任何非空白字符匹配。等效于Unicode字符类别[^frtvx85p{Z}]。如果通

6、过ECMAScript选项指定了符合ECMAScript的行为,则S等同于[^frtv]。d与任何十进制数字匹配。与Unicode的p{Nd}和非Unicode的[0-9]以及ECMAScript行为一样。D与任何非数字匹配。与Unicode的P{Nd}和非Unicode的[^0-9]以及ECMAScript行为一样。上表列举了,正则表达式中最最基本的语法定义,了解这些,我们已经可以定义一些简单的规则了,例如:1.匹配所有的字符当然是什么都不用写(@_@)2.匹配所有的英文字符a)wb)[a-zA-Z_0-9]3.匹配十进

7、制数字2北京网站建设网www.it586.com网站推广google推广google优化google网站排名专家搜集整理:www.it586.com北京网站建设网google网站推广a)db)[0-9]看上面的例子,是不是觉得很简单呢,不过,到目前为止,这样写出来的规则,还有一个很大的缺陷,就是没有声明匹配字符的个数?Q:我希望要匹配的字符为5个英文字母A:???光了解上面的知识是,无法解决这个的L。那正则表达式中是如何解决这个问题的呢,我们来看下面这个表:(ms-help://MS.VSCC/MS.MSDNVS.2052/cpgenref/h

8、tml/cpconquantifiers.htm)限定符表限定符说明*指定零个或更多个匹配;例如w*或(abc)*。与{0,}相同。+

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。