腾讯云网站解决方案帮您轻松应对建站成本高/网络不稳等常见问题

[其他] 利用正则表达式RegExp对象,成批量地判断电子邮箱格式是否正确

1
回复
1822
查看
[复制链接]

765

主题

779

帖子

3万

积分

董事

Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72

积分
33025
发表于 19-4-25 15:25:00 | 显示全部楼层 |阅读模式      紫钻仅向指定用户开放  
                                                   
本示例是在A列中存放了大量的未经清洗的电子邮箱,用创建的正则表达式函数MyExp将处理后的数据存放在在第二列 ... ...
*如果您想要示例中的原始文件,没得啥子问题,发送"MODEL+您的电子邮箱+20140422"给我,我把原始文件邮件给您,20140422是代表我2014.4.22日发送的案例。
0.jpg ) r0 f7 ^  F% V) U* s; a
仍然是老调重弹了,引用非常重要,没有对"Microsoft VBScript Regular Expressions 5.5"的引用,复制的代码运行不了是最常见的现象了...
示例代码 :
Sub JuEmail() '判断电子邮箱的格式是否正确4 W7 G' ]) |, }5 D3 ]
Dim I As Long
+ F2 W, o* V2 ?. _: z( r+ T" x, {& X+ n4 R& c1 A) x% l# L
For I = 2 To 100 '根据需要设置,或者用类似ThisWorkbook.ActiveSheet.Range("a60000").End(xlUp).Row这样的语句来判断最后一行单元格的行数量
1 s0 {/ e+ G+ D1 `Cells(I, 2).Value = MyExp(Cells(I, 1).Value)'调用正则表达式函数
: i; Q0 g+ D3 B* hNext7 t; \+ y% h- _3 ~$ j% H
End Sub
'-----------函数
'添加对正则表达式的引用: 菜单"工具"---"引用"--"Microsoft VBScript Regular Expressions 5.5"
4 S+ Q6 J5 K! Z. R; fFunction MyExp(MyStr As String) As String
Dim MyReg As New RegExp! [2 C( `3 p2 G; g1 a
Dim Mcl As MatchCollection- d) W4 C# h: ?  y) O' L- P
/ L8 u# D- X$ Z" K
With MyReg4 z& o  q* K% t) S/ C3 L
.Global = True '在整个搜索字符串时模式是全部匹配还是只匹配第一个% Q9 u: O: D* w# W
.IgnoreCase = True '指明模式搜索是否区分大小写
4 [8 f1 u1 _+ q3 B" X( t3 v.Pattern = "\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*" '设置或返回被搜索的正则表达式模式# A0 r' x. [  w8 |( w) A( R) e
End With! S/ f0 S0 R9 x  J5 \+ V8 I4 I+ ]; e
7 L4 q- E$ j) a6 G! b
Set Mcl = MyReg.Execute(MyStr)% x( x& A' S/ T2 \- q& n* f
If Mcl.Count = 1 Then' b3 }# [% s+ h; z& D
MyExp = "T"3 c$ {( t/ Y$ I% t0 P! d- K
Else
) f' \! b+ |  D( i& ~5 \MyExp = "F"$ B$ U3 H  x7 `2 O4 y( G
End If
& D% G! H8 C4 C/ C1 E' n7 ^, I, R5 Y& s
End Function
                    4 {0 h: q' ]* o) p1 w& a! m5 w: A3 }
                        

0

主题

6

帖子

2

积分

1°伸手党

Rank: 2

积分
2
发表于 19-12-17 01:22:56 | 显示全部楼层         
帮你顶下哈!!
回复

使用道具 举报

网站简介

球球发,是一家 Discuz! 商业插件、风格模板、网站源码、 Discuz!运营维护技术等于一体的交流分享网站,全站95%的资源都是免费下载,对于资源我们是每天更新,每个亲测资源最新最全---球球发(如果我们有侵犯了您权益的资源请联系我们删除