vb 检查电子邮件地址是否有效

一个简单的函数来测试电子邮件地址是否有效。

<span style="color: #808080;">' Made by using VBScript version 5.6 </span>
<span style="color: #b1b100;">Private</span> <span style="color: #b1b100;">Function</span> IsEmailValid<span style="color: #66cc66;">&#40;</span>byVal EmailAddress<span style="color: #66cc66;">&#41;</span>
    <span style="color: #b1b100;">Dim</span> TestEmailAddress, RegularExpressionObject, ExpressionMatch
&nbsp;
    <span style="color: #808080;">' Convert to string and trim whitespace</span>
    TestEmailAddress = <span style="color: #b1b100;">CStr</span><span style="color: #66cc66;">&#40;</span> EmailAddress <span style="color: #66cc66;">&#41;</span>
    TestEmailAddress = <span style="color: #b1b100;">Trim</span><span style="color: #66cc66;">&#40;</span> TestEmailAddress <span style="color: #66cc66;">&#41;</span>
&nbsp;
    <span style="color: #808080;">' Check if the given E-Mail adress is empty</span>
    <span style="color: #b1b100;">If</span> TestEmailAddress = <span style="color: #ff0000;">&quot;&quot;</span> <span style="color: #b1b100;">Then</span>
        IsEmailValid = <span style="color: #b1b100;">False</span>
        <span style="color: #b1b100;">Exit</span> <span style="color: #b1b100;">Function</span>
    <span style="color: #b1b100;">End</span> <span style="color: #b1b100;">If</span>
&nbsp;
     <span style="color: #808080;">' Minimum 6 characters... (a@b.de)</span>
    <span style="color: #b1b100;">if</span> <span style="color: #b1b100;">len</span><span style="color: #66cc66;">&#40;</span>TestEmailAddress<span style="color: #66cc66;">&#41;</span> &lt; <span style="color: #cc66cc;">6</span> <span style="color: #b1b100;">Then</span>
        IsEmailValid = <span style="color: #b1b100;">False</span>
        <span style="color: #b1b100;">Exit</span> <span style="color: #b1b100;">Function</span>
    <span style="color: #b1b100;">End</span> <span style="color: #b1b100;">If</span>
&nbsp;
    <span style="color: #808080;">' Test the E-Mail adress with a regular expression</span>
    <span style="color: #808080;">' (RegExp from regexlib.com - made by David Lott)</span>
    <span style="color: #b1b100;">Set</span> RegularExpressionObject = <span style="color: #b1b100;">New</span> RegExp
&nbsp;
    <span style="color: #b1b100;">With</span> RegularExpressionObject
        .<span style="color: #66cc66;">Global</span> = <span style="color: #b1b100;">True</span>
        .<span style="color: #66cc66;">IgnoreCase</span> = <span style="color: #b1b100;">True</span>
        .<span style="color: #66cc66;">Pattern</span> = <span style="color: #ff0000;">&quot;^([\w\-\.]+)@((\[([0-9]{1,3}\.){3}[0-9]{1,3}\])|(([\w\-]+\.)+)([a-zA-Z]{2,4}))$&quot;</span>
    <span style="color: #b1b100;">End</span> <span style="color: #b1b100;">With</span>
&nbsp;
    ExpressionMatch = RegularExpressionObject.<span style="color: #66cc66;">Test</span><span style="color: #66cc66;">&#40;</span>TestEmailAddress<span style="color: #66cc66;">&#41;</span>
&nbsp;
    <span style="color: #808080;">' Does the RegExp match?</span>
    <span style="color: #b1b100;">If</span> <span style="color: #b1b100;">Not</span> ExpressionMatch <span style="color: #b1b100;">Then</span>
        IsEmailValid = <span style="color: #b1b100;">False</span>
        <span style="color: #b1b100;">Exit</span> <span style="color: #b1b100;">Function</span>
    <span style="color: #b1b100;">End</span> <span style="color: #b1b100;">If</span>
&nbsp;
    <span style="color: #808080;">' Cleanup</span>
    <span style="color: #b1b100;">Set</span> RegularExpressionObject = <span style="color: #b1b100;">Nothing</span>
    <span style="color: #b1b100;">Set</span> ExpressionMatch = <span style="color: #b1b100;">Nothing</span>
&nbsp;
     <span style="color: #808080;">' Congrats, the E-Mail adress is valid </span>
    IsEmailValid = <span style="color: #b1b100;">True</span>
<span style="color: #b1b100;">End</span> <span style="color: #b1b100;">Function</span>
&nbsp;
 <span style="color: #808080;">' IsEmailValid returns true</span>
Response.<span style="color: #b1b100;">Write</span> IsEmailValid<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;test@example.com&quot;</span><span style="color: #66cc66;">&#41;</span>
Response.<span style="color: #b1b100;">Write</span> IsEmailValid<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;t@example.com&quot;</span><span style="color: #66cc66;">&#41;</span>
Response.<span style="color: #b1b100;">Write</span> IsEmailValid<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;404@example.org&quot;</span><span style="color: #66cc66;">&#41;</span>
Response.<span style="color: #b1b100;">Write</span> IsEmailValid<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;test@example.jp&quot;</span><span style="color: #66cc66;">&#41;</span>
Response.<span style="color: #b1b100;">Write</span> IsEmailValid<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;test.adress@example.com&quot;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
&nbsp;
 <span style="color: #808080;">' IsEmailValid returns false</span>
Response.<span style="color: #b1b100;">Write</span> IsEmailValid<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;&quot;</span><span style="color: #66cc66;">&#41;</span>
Response.<span style="color: #b1b100;">Write</span> IsEmailValid<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;test@examplecom&quot;</span><span style="color: #66cc66;">&#41;</span>
Response.<span style="color: #b1b100;">Write</span> IsEmailValid<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;test@&quot;</span><span style="color: #66cc66;">&#41;</span>
Response.<span style="color: #b1b100;">Write</span> IsEmailValid<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;test@x&quot;</span><span style="color: #66cc66;">&#41;</span>
Response.<span style="color: #b1b100;">Write</span> IsEmailValid<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;@test&quot;</span><span style="color: #66cc66;">&#41;</span>
Response.<span style="color: #b1b100;">Write</span> IsEmailValid<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;example.com&quot;</span><span style="color: #66cc66;">&#41;</span>
Response.<span style="color: #b1b100;">Write</span> IsEmailValid<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;test@[example].com&quot;</span><span style="color: #66cc66;">&#41;</span>
Response.<span style="color: #b1b100;">Write</span> IsEmailValid<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;test@.com&quot;</span><span style="color: #66cc66;">&#41;</span>