以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  [求助][求助] 如何在一个字段中显示另一个字段中是否包含关键字  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=96317)

--  作者:chh2321
--  发布时间:2017/2/17 17:01:00
--  [求助][求助] 如何在一个字段中显示另一个字段中是否包含关键字
百货名称       销售种类                                                         销售产品
第一百货    台式电脑,电视机,手机                         惠普台式电脑,索尼电视机,夏普电视机,华为手机,小米手机                            
第二百货    笔记本电脑,电视机,手机,洗衣机     华硕笔记本电脑,创维电视机,iphone手机,海尔洗衣机                            
第三百货    笔记本电脑,电视机                              联想笔记本电脑,戴尔笔记本电脑,松下电视机,海尔电视机                            
第四百货    台式电脑,音响                                苹果电脑一体机,Bose音响                            
第五百货    台式电脑,笔记本电脑,电视机           联想台式电脑,联想笔记本电脑,海尔电视机                            
第六百货    台式电脑,手机                                   惠普台式电脑,小米手机,联想手机                            
第七百货    洗衣机,手机,电视机                         海尔洗衣机,iphone手机,华为手机,vivo手机,松下电视机                


请教老师,如何从销售产品列中判断是否包含相关关键字,自动填入销售种类列?  (抱歉,我的电脑无法贴图及添加附件)         
[此贴子已经被作者于2017/2/17 17:54:17编辑过]

--  作者:有点色
--  发布时间:2017/2/17 17:21:00
--  

参考代码

 

Dim str1 As String = "洗衣机,手机,电视机"
Dim str2 As String = "海尔洗衣机,iphone手机,华为手机,vivo手机,松下电视机,测试"
For Each s2 As String In str2.split(",")
    Dim flag As Boolean = False
    For Each s1 As String In str1.split(",")
        If s2.contains(s1)  Then
            flag = True
            Exit For
        End If
    Next
    If flag Then
        msgbox(s2 & "符合")
    Else
        msgbox(s2 & "不符合")
    End If
Next


--  作者:chh2321
--  发布时间:2017/2/17 17:29:00
--  
 请教老师,关键字能否用数组或集合,方便今后维护升级?不好意思,我是菜鸟
[此贴子已经被作者于2017/2/17 17:35:09编辑过]

--  作者:有点色
--  发布时间:2017/2/17 17:32:00
--  

 类别关键字,可以单独存放在一个表里面。


--  作者:chh2321
--  发布时间:2017/2/17 17:46:00
--  
 上述代码测试结果:海尔洗衣机,iphone手机,华为手机,vivo手机,松下电视机均符合,“测试”不符合。
我想加入模糊判断功能,比如苹果电脑一体机,上述代码测试不符合,但如果将电脑一体机归类到台式机,怎样设计代码,让它符合呢?

--  作者:有点色
--  发布时间:2017/2/17 17:56:00
--  

做一个关键字匹配表格吧。

 

【关键字】  【归类】

电脑            台式机

一体机         台式机

 

直接查这个表得到归类。


--  作者:chh2321
--  发布时间:2017/2/17 18:02:00
--  
我上传项目文件了,请老师进一步明示,我是菜鸟
--  作者:chh2321
--  发布时间:2017/2/17 18:02:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目4.table


--  作者:有点色
--  发布时间:2017/2/17 18:46:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目4.table


--  作者:chh2321
--  发布时间:2017/2/17 20:12:00
--  
非常感谢老师。问题解决了。

有两点疑惑:
1、代码中销售产品列是用中文标点“,”标识的,因此表A中如果用西文标点“,”就没有办法识别。能否无论中文“,”还是西文“,”,都可以识别?
2、能否加上排除条件,避免一些错误,比如不小心销售产品中敲入“放手机会”,销售产品种类还是会出现“手机”

谢谢老师!
[此贴子已经被作者于2017/2/17 20:14:42编辑过]