正则表达式综合学习笔记

正则表达式综合学习笔记

ID:14291965

大小:74.50 KB

页数:44页

时间:2018-07-27

正则表达式综合学习笔记_第1页
正则表达式综合学习笔记_第2页
正则表达式综合学习笔记_第3页
正则表达式综合学习笔记_第4页
正则表达式综合学习笔记_第5页
资源描述:

《正则表达式综合学习笔记》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、正则表达式学习总结1----------------Wpxxsyzx老师作品http://club.excelhome.net/thread-750695-1-1.html1、正则表达式能干什么呢?  你肯定用过excel的“查找”、“替换”功能。正则表达式也可以对字符串进行特定的复杂查找和替换,但它比“查找”和“替换”功能强大的多的多。  正在看蓝桥玄霜版主的字典帖,选了其中的两个例子(附件中的例A和例B),你看到的第一反应是用字典去解决,例A和例B使用正则表达式也很好的解决了问题。(给出这两个例子不是说正则表达式比字典好,只是借此体会正则

2、表达式的强大功能)例1、有如下一组电话号码,如何改变成右侧的样式。(020)12345678    020-12345678(021)32145678    021-32145678(0371)45678129    0371-45678129(0392)1234567    0392-1234567(010)21458965    010-21458965(0393)45987636    0393-45987636(0372)87654321    0372-87654321你想到用查找—替换功能解决的方法了吗?利用正则表达式很容易实现。

3、PrivateSubCommandButton1_Click()DimregEXAsNewRegExp‘定义一个正则表达式对象regEX.Pattern="((d{3,4}))(d{7,8})"‘设置正则表达式Fori=1To7  Range("c"&i)=regEX.Replace(Range("a"&i),"$1-$2")NextEndSub2、什么是正则表达式?  简单的说,正则表达式就是一个由一组具有特殊含义的字符组成的字符串,(如例中的"((d{3,4}))(d{7,8})"),这些有特殊含义的字符设置了一些条件,并

4、通过regEX.Pattern="((d{3,4}))(d{7,8})"这一句告诉查找引擎,按照它规定的条件查找符合要求的字符串。再看一个简单的例子:例2,把字符串“这有一本关于VBA的书,它在第二个书柜里”里的书换为“book”。PrivateSubCommandButton2_Click()DimregEXAsNewRegExpregEX.Global=True‘设置查找返回全部匹配regEX.IgnoreCase=FALSE‘设置查找不区分大小写regEX.Pattern="书"Range("a12")=regEX.Replac

5、e("这有一本关于VBA的书,它在第二个书柜里","book")EndSub3、正则表达式的工作原理  我们需要找出目标字符串中所有的“书”字,根据我们的要求写出正则表达式:”书”,通过regEX.Pattern="书"这句把我们的要求以正则表达式的形式告诉查找引擎(本例中正则表达式规定的条件很简单:符合要求的字符串必须是字符“书”),查找引擎从目标字符串的第一个字符开始查找,找到符合正则表达式要求的字符串后就存储起来,然后继续向后查找直到结束。最后,把找到的所有符合要求的字符串以集合的形式返回。(关于返回的集合后面会详细介绍)4、正则表达式

6、对象有四个属性:Global:设置为true表示查找引擎返回找到的所有符合要求的子字符串,设置为false表示只返回找到的第一个符合要求的子字符串。IgnoreCase:设置为true表示查找时忽略大小写,设置为FALSE表示查找时区分大小写。Pattern:存放正则表达式,如例2一样regEX.Pattern="书"MultiLine:不用多说了吧。5、正则表达式对象有三个方法:Execute方法:语法object.Execute(sourcestringasstring)asstring,object为你定义的正则表达式对象(如:regE

7、X),参数sourcestring为要对其进行查找的字符串(如例中的"这有一本关于VBA的书,它在第二个书柜里")。Execute方法查找并返回符合要求的字符串的集合,相当于使用“查找”功能。Test方法:语法object.Execute(sourcestringasstring)asstring,其结构和用法和Execute方法一样,它和Execute方法唯一不同的是Test方法只进行测试查找,而不会返回符合要求的子字符串集合。一般用它判断是否可以找到符合要求的字符串。Replace方法:语法object.Replace(sourcestr

8、ingasstring,Replace)asstring,object为你定义的正则表达式对象,参数sourcestring为要对其进行查找的字符串,参数Repla

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

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

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