• VB编程中 LIKE操作符的使用方法


    相对于本身的潜在功能,L I K E可能是最被忽视的一个操作符了。它的最基本用途是检查一个字符串与给定样式的匹配程度。

        比如,很容易检查一个产品ID号是否由一个字母以及3个数字组成:

        If ProductID Like "[A-Za-z][0-9][0-9][0-9]" Then Print "OK"

           或者:

           If ProductID Like "[A-Za-z]###" Then Print "OK" 

        除了上述基本功能,LIKE在其他情况下也非常有用。

        比如,可以检查一个字符串只包含大写字母:

        If Not StringVar Like "*[!A-Z]*" Then Print "OK"

        同理,也可以检查一个字符串只包含数字:

        If Not StringVar Like "*[!0-9]*" Then Print "OK"

           检查一个字符串只包含字母或者数字符:

        If Not StringVar Like "*[!A-Za-z0-9]*" Then Print "OK"

           检查一个字符串是否为合法的VB变量名,就是说,开头是一个字母,接着跟随字母或数字符:

           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"

          

        检查一个有符号整数是很复杂的事情,因为必须计算出前导符号并且计算好"#"符号的正确数目:

        If NumValue Like "#" Or (Len(NumValue) > 1 And NumValue Like "[-+0-9]" & String$(Len(NumValue) - 1, "#")) Then Print "OK"

          

           检测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"

           附:Like 运算符示例

        Dim MyCheck
           MyCheck = "aBBBa" Like "a*a"   ' 返回 True。 
           MyCheck = "F" Like "[A-Z]"   ' 返回 True。
           MyCheck = "F" Like "[!A-Z]"   ' 返回 False。
           MyCheck = "a 2a" Like "a#a"   ' 返回 True。
           MyCheck = "aM5b" Like "a[L-P]#[!c-e]"   ' 返回 True。
           MyCheck = "BAT123khg" Like "B?T*"   ' 返回 True。
           MyCheck = "CAT123khg" Like "B?T*"   ' 返回 False。

  • 相关阅读:
    MSSQL—列记录合并
    MSSQL—字符串分离(Split函数)
    如何在ASP.NET Core中自定义Azure Storage File Provider
    从零开始实现ASP.NET Core MVC的插件式开发(六)
    对ASP.NET程序员非常有用的85个工具
    vs-code 配置
    idea-plugin
    VirtualBox中CentOS遇到的问题
    监听器
    线程组复杂场景
  • 原文地址:https://www.cnblogs.com/huhewei/p/6733661.html
Copyright © 2020-2023  润新知