VB中如何判断一串字符中包含特定的几个字符?
例如有字符串:“我来自中国”“中华人民共和国”“什么都没有”“哇哈哈哈”...........N个字符串要求:在TEXT文本框中输入一个字符串,例如:中国那么包含有“中”...
例如有字符串:
“我来自中国”
“中华人民共和国”
“什么都没有”
“哇哈哈哈”
...........
N个字符串
要求:在TEXT文本框中输入一个字符串,例如:中国
那么包含有“中”字和“国”字的字符串剔除。例如上面的,输出:
“什么都没有”
“哇哈哈哈”
........
没有包含
“中”字和“国”字的字符
如果输入:哈哈中
那么包含有
“中”字和“哈”字的字符串都被剔除。 展开
“我来自中国”
“中华人民共和国”
“什么都没有”
“哇哈哈哈”
...........
N个字符串
要求:在TEXT文本框中输入一个字符串,例如:中国
那么包含有“中”字和“国”字的字符串剔除。例如上面的,输出:
“什么都没有”
“哇哈哈哈”
........
没有包含
“中”字和“国”字的字符
如果输入:哈哈中
那么包含有
“中”字和“哈”字的字符串都被剔除。 展开
展开全部
用Instr函数判断
追问
用
Instr
我知道可以这样:
Dim a As String
a = "中华人民共和国"
If InStr(a, "国") > 0 Then
MsgBox ("a有")
Else
MsgBox ("a无")
End If
但是却不能这样:
a = "中华人民共和国"
If InStr(a, "中国") > 0 Then
a = "中华人民共和国"中包含了“中”和“国”字,我要剔除它。
InStr当然可以分开写包含中字和国字的语句,但是如果是有多字呢?“中国人哈哈......”我想剔除包含这些字的方法。
追答
那就用一个循环:
Dim a As String, b As String
a = "中华人民共和国"
b = "中国人哈哈"
For i = 1 To Len(b)
If InStr(a, Mid(b, i, 1)) > 0 Then
MsgBox ("a有" & Mid(b, i, 1))
Else
MsgBox ("a无" & Mid(b, i, 1))
End If
Next
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询