成员运算符用于判断提供的值是否在或不在指定的序列中,如果成立,返回True,否则返回False。
【Excel VBA】
Excel VBA中提供了一个Like运算符,它用于判断字符串是否与某种模式相匹配,例如下面判断字符串是否为数字模式。数字模式使用通配符。示例文件的存放路径为Samples\ch03\Excel VBA\成员运算符.xlsm。
code.vba
Sub Test5()
Debug.Print "3" Like "[0-9]" '是否为数字
Debug.Print "F" Like "[a-zA-Z]" '是否为字母
Debug.Print "好" Like "[一-龥]" '是否为汉字
Debug.Print "adefb" Like "a*b" '模式a*b表示字符a和b之间为任意个字符
Debug.Print "awb" Like "a?b" '模式a?b表示字符a和b之间有一个字符
End Sub
运行过程,立即窗口中均返回T rue。
第6章介绍字符串的时候还会介绍一个Instr函数,它判断指定字符串在另一个字符串里面是否存在,并返回第一次出现的位置;如果没有,返回0。例如,下面判断字符串"Hello,VBA!"中是否包含"VBA",返回第一次出现的位置。示例文件的存放路径为Samples\ch03\Excel VBA\成员运算符.xlsm。
code.vba
Sub Test6()
Dim intI As Integer
intI = InStr("大谦Excel", "Excel")
Debug.Print intI
End Sub
运行过程,立即窗口中均返回数字3。
【Python】
Python中常见的成员运算符有in和not in,如表3-8所示。
表3-8 成员运算符
| 运算符号 | 说 明 |
|---|---|
| in | 如果提供的值在指定序列中,返回True,否则返回False |
| not in | 如果提供的值不在指定序列中,返回True,否则返回False |
下面使用成员运算符判断对象之间的包含关系。
code.python
>>> 1 in [1,2,3] #列表中是否包含数字1
True
>>> "abc"Excel"大谦Excel" #后面的字符串中是否包含"Excel"
True
要实现上面Excel VBA的Like运算符使用通配符的效果,Python中可以使用正则表达式来实现,这里暂不介绍。