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

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

0
回复
1480
查看
[复制链接]

761

主题

775

帖子

3万

积分

董事

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

积分
32849
发表于 19-4-25 15:25:00 | 显示全部楼层 |阅读模式      紫钻仅向指定用户开放  
                                                   
本示例是在A列中存放了大量的未经清洗的电子邮箱,用创建的正则表达式函数MyExp将处理后的数据存放在在第二列 ... ...
*如果您想要示例中的原始文件,没得啥子问题,发送"MODEL+您的电子邮箱+20140422"给我,我把原始文件邮件给您,20140422是代表我2014.4.22日发送的案例。
0.jpg
) m1 ]- a+ P# s+ T2 I
仍然是老调重弹了,引用非常重要,没有对"Microsoft VBScript Regular Expressions 5.5"的引用,复制的代码运行不了是最常见的现象了...
示例代码 :
Sub JuEmail() '判断电子邮箱的格式是否正确/ O3 V/ N, \+ g) N# m# j3 s! L
Dim I As Long
7 t* D, V# a) Q
) r+ ]; o# ~  w  ~6 B7 U9 j1 _For I = 2 To 100 '根据需要设置,或者用类似ThisWorkbook.ActiveSheet.Range("a60000").End(xlUp).Row这样的语句来判断最后一行单元格的行数量) x) d3 M3 G  q9 y% S
Cells(I, 2).Value = MyExp(Cells(I, 1).Value)'调用正则表达式函数8 n8 H3 B6 w' ]/ d
Next
6 @: C1 n  l* v" `End Sub
'-----------函数
'添加对正则表达式的引用: 菜单"工具"---"引用"--"Microsoft VBScript Regular Expressions 5.5"$ E% ^& T! f" J4 G' ~. h0 j
Function MyExp(MyStr As String) As String
Dim MyReg As New RegExp* P- \, ^) J% Q$ h6 C) r& f
Dim Mcl As MatchCollection
8 ~" j) T7 z: |& ?- h8 n0 Q9 C* W# Q( r2 ^# k5 L' [0 D% B% K" O& J
With MyReg; H% e( @5 L# Y' a
.Global = True '在整个搜索字符串时模式是全部匹配还是只匹配第一个
  T0 ^& v2 s& B0 J5 H8 Y.IgnoreCase = True '指明模式搜索是否区分大小写
; g* o2 j$ o+ ?0 O0 i.Pattern = "\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*" '设置或返回被搜索的正则表达式模式  r: k( G1 O. J7 M6 S; i4 C
End With" Y+ m' p. Y4 W0 r

5 }6 B3 S$ t; ~: Q% W4 ?* O3 RSet Mcl = MyReg.Execute(MyStr). o3 P; i7 t5 V4 o2 |6 z
If Mcl.Count = 1 Then; S7 ?& w* ~( W3 ]  ]
MyExp = "T"/ o% \# L  c# Y- R+ ?- I4 p* A
Else) b+ \$ y/ S( x  {; Q; r
MyExp = "F"
- ?" e- y; C+ c6 d7 OEnd If% v: [: e. M7 ~3 f0 w( q2 p

$ l9 w# O6 e8 z$ z6 l: B  aEnd Function
                    & h1 C8 H7 I1 P- G: _4 E0 w
                        
网站简介

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