If ProductID Like "[A-Za-z][0-9][0-9][0-9]" Then Print "OK" ' this is equivalment, because "#" stands for a digit If ProductID Like "[A-Za-z]###" Then Print "OK" 除了上述基本功能,LIKE在其他情况下也非常有用。以下就一一列举: 比如,可以检查一个字符串只包含大写字母: If Not ProductID Like "*[!A-Z]*" Then Print "OK" 同理,也可以检查一个字符串只包含数字: If Not ProductID Like "*[!0-9]*" Then Print "OK" 下面的语句检查一个字符串只包含字母或者数字符: If Not ProductID Like "*[!A-Za-z0-9]*" Then Print "OK" 下面的语句检查一个字符串是否为合法的VB变量名,就是说,开头是一个字母,接着跟随字母或数字符: ' VarName是被检查的字符串 If VarName like "[A-Za-z]*" And Not Mid$(VarName, 2) Like "*[!A-Z_a-z0-9]*" _ Then Print "OK" 下面的语句检查字符串是否至少包含2个空格(连续的或者间隔的): If TestString Like "* * *" Then Print "OK" 而下面的语句进一步确认2个空格是不连续的: If TestString Like "* ?* *" Then Print "OK" 检查一个有符号整数是很复杂的事情,因为必须计算出前导符号并且计算好"#"符号的正确数目: ' NumValue是被检测的字符串 If NumValue Like "#" Or (Len(NumValue) > 1 And NumValue Like "[-+0-9]" & _ String$(Len(NumValue) - 1, "#")) Then Print "OK" 最后一个例子是:检测NumValue是否包含一个有符号的十进制数值。这种情况下,我们必须要确定存在一个前导符号以及只有一个十进制分隔符,并且所有其他字符都是数字符: ' NumValue是被检测的字符串 If NumValue Like "#" Or (Len(NumValue) > 1 And Left$(NumValue, _ 1) Like "[-+.0-9]" And Not Mid$(NumValue, 2) Like "*[!.0-9]*" And Not _ NumValue Like "*.*.*" ) Then Print "OK"
在VB中,相对于本身的潜在功能,LIKE可能是最被忽视的一个操作符了。它的最基本用途是检查一个字符串与给定样式的匹配程度。比如,很容易检查一个产品ID号是否由一个字母以及3个数字组成:
文章来源于领测软件测试网 https://www.ltesting.net/
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备2023014753号-2
技术支持和业务联系:info@testage.com.cn 电话:010-51297073