1、正则表达式能干什么呢
你肯定用过 excel 的“查找”、“替换”功能
正则表达式也可以对字符串进行特定的复杂查找和替换,但它比“查找”和“替换”功能强大的多的多
正在看蓝桥玄霜版主的字典帖,选了其中的两个例子(附件中的例 A 和例 B),你看到的第一反应是用字典去解决,例 A 和例 B 使用正则表达式也很好的解决了问题
(给出这两个例子不是说正则表达式比字典好,只是借此体会正则表达式的强大功能)例 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你想到用查找—替换功能解决的方法了吗
利用正则表达式很容易实现
Private Sub CommandButton1_Click()Dim regEX As New RegExp‘定义一个正则表达式对象regEX
Pattern = ”\((\d{3,4})\)(\d{7,8})"‘设置正则表达式For i = 1 To 7 Range(”c" & i) = regEX
Replace(Range(”a” & i), ”$1-$2")NextEnd Sub2、什么是正则表达式
简单的说,正则表达式就是一个由一组具有特别含义的字符组成的字符串,(如例中的” \((\d{3,4})\)(\d{7,8})"),这些有特别含义的字符设置了一些条件,并通过 regEX
Pattern = "\((\d{3,4})\)(\d{7,8})”这一句告诉查找引擎,根据它规