(vb)我现在要完成一个 多个关键字 的搜索 ,关键字中间用空格隔开,
答案:3 悬赏:20 手机版
解决时间 2021-03-29 01:09
- 提问者网友:遁入空寂
- 2021-03-28 14:13
(vb)我现在要完成一个 多个关键字 的搜索 ,关键字中间用空格隔开,
最佳答案
- 五星知识达人网友:七十二街
- 2021-03-28 15:46
用split分解后再用以下代码
sq="关键信息='" sz1 & "'"
for II=1 to Ubound(sz1)
sq=Sql &"关键信息='" sz1 & "'"
next
sq="select * from stuinfo where " & sq
这是在数据表stuinfo中查找不定数量关键字的方法,希望对你有用。追问这里的sql是什么, 是sql语句么,可是为什么 下面还有sq追答我习惯用sql代表sql语句,看你用的是sq,所以出现了笔误,全部用sq就好了。追问呵呵呵,谢谢,不过这个好像是点儿有问题的,sz1 他是一个数组,而sq 是string ,而且 for循环中 里面有让他循环啊,还请高手帮我再看看追答sq=Sq &"关键信息='" sz1(ii) & "'"
sq="关键信息='" sz1 & "'"
for II=1 to Ubound(sz1)
sq=Sql &"关键信息='" sz1 & "'"
next
sq="select * from stuinfo where " & sq
这是在数据表stuinfo中查找不定数量关键字的方法,希望对你有用。追问这里的sql是什么, 是sql语句么,可是为什么 下面还有sq追答我习惯用sql代表sql语句,看你用的是sq,所以出现了笔误,全部用sq就好了。追问呵呵呵,谢谢,不过这个好像是点儿有问题的,sz1 他是一个数组,而sq 是string ,而且 for循环中 里面有让他循环啊,还请高手帮我再看看追答sq=Sq &"关键信息='" sz1(ii) & "'"
全部回答
- 1楼网友:woshuo
- 2021-03-28 16:44
问题提得太笼统了....追问就是想实现,输入多个关键字,能在搜索的内容中包含所搜寻的关键字,就像淘宝里面的搜索一样
- 2楼网友:蓝房子
- 2021-03-28 16:13
用split分割为数组,搜索时用or即可追问我用split后,显示出来的是 第一个关键字 搜索出了信息,然后第二个关键字 有搜索出了信息,就重复了,这个怎么办追答这个应该是搜索后列出,排除重复内容追问Dim sz1 As String() = Split(key, " ")
For ii = 0 To UBound(sz1)
key = sz1(ii)
if key <>"" then
sq=" where b '%" & key & "%'"
end if
Dim shuzu As String() =“ select *** “ & sq &" ****"
Dim sz As String(), qq, ali, tao, wz As String
【 这里是数组循环】Next
但是每一个关键字,他都循环一次,出现了重复,我想实现的是,搜索的内容中包含着两个关键字追答我只是举个例子,并不能针对你的问题,假设文本框1里有如下文本:
你们
我们
他们
文本框2里为要搜索的多个用空格隔开的关键字,搜索结果最终以MsgBox显示
Private Sub Command1_Click()
a = Split(Text2.Text, " ")
b = Split(Text1.Text, vbCrLf)
For i = 0 To UBound(b)
For ii = 0 To UBound(a)
If InStr(b(i), a(ii)) Then
s = s & b(i) & vbCrLf
End If
Next
Next
MsgBox s
End Sub
For ii = 0 To UBound(sz1)
key = sz1(ii)
if key <>"" then
sq=" where b '%" & key & "%'"
end if
Dim shuzu As String() =“ select *** “ & sq &" ****"
Dim sz As String(), qq, ali, tao, wz As String
【 这里是数组循环】Next
但是每一个关键字,他都循环一次,出现了重复,我想实现的是,搜索的内容中包含着两个关键字追答我只是举个例子,并不能针对你的问题,假设文本框1里有如下文本:
你们
我们
他们
文本框2里为要搜索的多个用空格隔开的关键字,搜索结果最终以MsgBox显示
Private Sub Command1_Click()
a = Split(Text2.Text, " ")
b = Split(Text1.Text, vbCrLf)
For i = 0 To UBound(b)
For ii = 0 To UBound(a)
If InStr(b(i), a(ii)) Then
s = s & b(i) & vbCrLf
End If
Next
Next
MsgBox s
End Sub
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯