Foxtable(狐表)用户栏目专家坐堂 → 如何提取语句关键词


  共有105人关注过本帖树形打印复制链接

主题:如何提取语句关键词

帅哥哟,离线,有人找我吗?
timber83
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:57 积分:568 威望:0 精华:0 注册:2022/9/5 21:00:00
如何提取语句关键词  发帖心情 Post By:2025/1/16 10:08:00 [只看该作者]

表A  
   序号                 语句                                                  关键词
Q0001 企业未按规定设置特种设备安全管理机构
Q0002 企业未按规定配备特种设备安全管理负责人
Q0003 企业未按规定配备专职特种设备安全管理员    


表B 
 序号           关键词                                                       
1                企业
2                未按规定设置
3                特种设备
4                安全管理
5                机构
6                未按规定配备
如何将表A每一行语句中包含表A的关键词提取对应行的关键词的列中, 形成如下结果
   序号                 语句                                                  关键词
Q0001 企业未按规定设置特种设备安全管理机构             企业,未按规定设置,特种设备,安全管理,机构
Q0002 企业未按规定配备特种设备安全管理负责人          企业,未按规定配备,特种设备,安全管理,
Q0003 企业未按规定配备专职特种设备安全管理员          企业,未按规定配备,特种设备,安全管理,







                                                               
 

 回到顶部
帅哥哟,离线,有人找我吗?
y2287958
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:4798 积分:34825 威望:0 精华:0 注册:2008/8/31 22:44:00
  发帖心情 Post By:2025/1/16 10:15:00 [只看该作者]

上例子

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111852 积分:569414 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2025/1/16 10:17:00 [只看该作者]

表A,datacolchanged事件

If e.DataCol.name = "语句" Then
    If e.DataRow.isnull("语句") Then
        e.DataRow("关键词") = Nothing
    Else
        Dim s As String = DataTables("表B").GetComboListString("关键词", "'" & e.newvalue & "' like '%' + 关键词 + '%'")
        e.DataRow("关键词") = s.Replace("|", ",")
    End If
End If

 回到顶部
帅哥哟,离线,有人找我吗?
timber83
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:57 积分:568 威望:0 精华:0 注册:2022/9/5 21:00:00
  发帖心情 Post By:2025/1/16 10:17:00 [只看该作者]

 这是结果例子
 序号                 语句                                                                                  关键词
Q0001           企业未按规定设置特种设备安全管理机构             企业,未按规定设置,特种设备,安全管理,机构 
Q0002 企业未按规定配备特种设备安全管理负责人          企业,未按规定配备,特种设备,安全管理,
Q0003 企业未按规定配备专职特种设备安全管理员          企业,未按规定配备,特种设备,安全管理,

 回到顶部
帅哥哟,离线,有人找我吗?
y2287958
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:4798 积分:34825 威望:0 精华:0 注册:2008/8/31 22:44:00
  发帖心情 Post By:2025/1/16 10:22:00 [只看该作者]

Output.Show(String.Join(",", "企业,未按规定设置,特种设备,安全管理,机构,未按规定配备".Split(",").
Where(Function(元素) regex.IsMatch("企业未按规定设置特种设备安全管理机构", 元素))))

 回到顶部
帅哥哟,离线,有人找我吗?
timber83
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:57 积分:568 威望:0 精华:0 注册:2022/9/5 21:00:00
  发帖心情 Post By:2025/1/16 10:59:00 [只看该作者]

运行错误提示:
.NET Framework 版本:4.0.30319.42000
Foxtable 版本:2024.11.1.1
错误所在事件:表,特征, DataColChanged
详细错误信息:
调用的目标发生了异常。
无法在 System.String 和 System.DBNull 上执行“Like”操作。

 回到顶部
帅哥哟,离线,有人找我吗?
timber83
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:57 积分:568 威望:0 精华:0 注册:2022/9/5 21:00:00
  发帖心情 Post By:2025/1/16 11:09:00 [只看该作者]

运行错误提示:
.NET Framework 版本:4.0.30319.42000
Foxtable 版本:2024.11.1.1
错误所在事件:表,特征, DataColChanged
详细错误信息:
调用的目标发生了异常。
无法在 System.String 和 System.DBNull 上执行“Like”操作。

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111852 积分:569414 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2025/1/16 11:27:00 [只看该作者]

试试

Dim s As String = DataTables("表B").GetComboListString("关键词", "'" & e.newvalue & "' like '%' + 关键词 + '%' and 关键词 is not null")

 回到顶部
帅哥哟,离线,有人找我吗?
timber83
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:57 积分:568 威望:0 精华:0 注册:2022/9/5 21:00:00
  发帖心情 Post By:2025/1/16 11:31:00 [只看该作者]

还是运行错误:
.NET Framework 版本:4.0.30319.42000
Foxtable 版本:2024.11.1.1
错误所在事件:表,特征, DataColChanged
详细错误信息:
调用的目标发生了异常。
无法在 System.String 和 System.DBNull 上执行“Like”操作。

是不是like 不能用?

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111852 积分:569414 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2025/1/16 11:41:00 [只看该作者]

再试试

Dim s As String = DataTables("表B").GetComboListString("关键词", "'" & e.newvalue & "' like '%' + isnull(关键词,'null') + '%'")



 回到顶部
总数 11 1 2 下一页