需要在邮政编码范围之间进行识别

use*_*358 5 regex string vba range

我对很新,我正在试图弄清楚如何识别一个字符变化范围内的邮政编码.

例如,我想查看邮政编码是否介于2G8和之间2P8.

换句话说,什么我正在寻找的范围会2_8下划线可以GP,但我不知道如何识别代码.

我真的很感激帮助找出如何处理这个问题.谢谢!

bre*_*tdj 9

LIKE 避免重复的字符串测试

1.简单测试

Function ValidString(strIn As String) As Boolean
ValidString = strIn Like "2[G-P]8"
End Function
Run Code Online (Sandbox Code Playgroud)

2.案例不敏感版本

Function ValidString(strIn As String) As Boolean
ValidString = LCase$(strIn) Like LCase$("2[G-P]8")
End Function
Run Code Online (Sandbox Code Playgroud)


mel*_*okb 7

您可以使用VBA Mid函数提取每个字符并根据您的业务规则进行验证.以下是它的外观示例:

Function ValidatePostalCode(code As String)
    ValidatePostalCode = _
        (Mid(code, 1, 1) = "2") And _
        (Mid(code, 2, 1) >= "G" And Mid(code, 2, 1) <= "P") And _
        (Mid(code, 3, 1) = "8")
End Function
Run Code Online (Sandbox Code Playgroud)

此函数将返回值TrueFalse指示输入是否有效.