第四章 正则表达式 4.12 正则表达式与数组结合 如果匹配一个字符串需要多个正则表达式,也可以把正则表达式写在数组里,用for each语句循环执行。 例句: For each 变量in Array(“arr(1)”,”arr(2)”,”arr(3)”) .pattern=变量 Next 小程序: 对设置的密码进行校验,确保有大写字母、小写字母和数字。 Sub 校验密码() Set reg = CreateObject('vbscript.regexp') mm = InputBox('请设置您的密码:') If Len(mm) < 6 Then MsgBox '密码长度不能少于6位': Exit Sub For Each ss In Array('[A-Z]', '[a-z]', '\d') With reg .Global = True .Pattern = ss If .Test(mm) Then n = n + 1 End If End With Next If n < 3 Then MsgBox '密码中必须包含大写字母、小写字母和数字' Else MsgBox '密码设置成功!' End If End Sub 我们把密码里需要包含的大写字母、小写字母和数字放在数组Array('[A-Z]', '[a-z]', '\d')里,然后利用变量在这个数组里循环,分别与输入的密码测试是否能够匹配成功。匹配成功了n累加1,如果密码三项要素都包含,最后n的值为3。 |
|