Foxtable(狐表)用户栏目专家坐堂 → [求助]动态合成表达式的问题!!


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

主题:[求助]动态合成表达式的问题!!

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


加好友 发短信
等级:五尾狐 帖子:1165 积分:9032 威望:0 精华:1 注册:2011/5/25 16:33:00
[求助]动态合成表达式的问题!!  发帖心情 Post By:2012/11/15 11:28:00 [只看该作者]

 Dim s As String = Tables("综合部物品分类设置_综合部物品分类设置Table1").current("分类编号")
Tables("综合部物品分类设置_综合部物品分类设置Table1").filter = "分类编号 Like '" & s & "%'"

上面这个 换成

Tables("综合部物品分类设置_综合部物品分类设置Table1").filter = "分类编号 Like '" & s & "???'"
有问题嘛  貌似我最后筛选不出想要的数据~~


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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/11/15 11:32:00 [只看该作者]

 如果是sqlserver数据库的话,? 改成 _

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


加好友 发短信 一级勋章
等级:超级版主 帖子:7258 积分:40773 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2012/11/15 11:36:00 [只看该作者]

注意匹配符号的规律:

 

Like运算符

Like使用通配符来比较字符串。

可用的通配符有:

字符 说明
? 任何单个字符
* 零或多个字符
# 任何单个数字(0 到 9)
[字符列表] 字符列表中的任何单个字符,例如[abx]表示a、b、x三个字符中的任何一个。
[!字符列表] 不在字符列表中的任何单个字符,例如[!abx]表示除a、b、x之外的任何一个字符。

方括号中的字符列表,可以使用连字符 (–) 将范围的上下限分开,例如[a-e]表示字母a到e中的任意一个,[a-z]就表示任意一个字母,而[0-9]表示任意一数字。

将下面的代码复制到命令窗口执行,请留意注释和执行结果:

'任意3个字符,后接3个数字
Output.Show(
"ABC123" Like "???###") '匹配
Output.Show(
"A1212A" Like "???###") '不匹配
'任意一个字符,随后是ABC三字符中的任意一个

Output.Show(
"RB" Like "?[ABC]") '匹配
Output.Show(
"RD" Like "?[ABC]") '不匹配
'任意一个字符,随后是除ABC三字符之外的任意一个字符

Output.Show(
"RB" Like "?[!ABC]") '不匹配
Output.Show(
"RD" Like "?[!ABC]") '匹配
'任意一个字母,随后是两个数字

Output.Show(
"a12" Like "[a-z]##") '匹配
Output.Show(
"112" Like "[a-z]##") '不匹配

 


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


加好友 发短信
等级:五尾狐 帖子:1165 积分:9032 威望:0 精华:1 注册:2011/5/25 16:33:00
  发帖心情 Post By:2012/11/16 9:26:00 [只看该作者]

  Dim s As String = Tables("综合部物品分类设置_综合部物品分类设置Table1").current("分类编号")
Tables("综合部物品分类设置_综合部物品分类设置Table1").filter = "分类编号 Like '" & s & "___'"

貌似还是不行~~~

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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/11/16 9:29:00 [只看该作者]

 有例子不?不会有这样的问题吧?

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


加好友 发短信
等级:五尾狐 帖子:1165 积分:9032 威望:0 精华:1 注册:2011/5/25 16:33:00
  发帖心情 Post By:2012/11/16 10:03:00 [只看该作者]

采用的sqltable型

Dim s As String = Tables("综合部物品分类设置_综合部物品分类设置Table1").current("分类编号")
Dim i As Integer = s.LastIndexOf(".")
s = s.SubString(0,i)

Tables("综合部物品分类设置_综合部物品分类设置Table1").filter = "分类编号 Like '" & s & "___'"


图片点击可在新窗口打开查看此主题相关图片如下:1.jpg
图片点击可在新窗口打开查看



[此贴子已经被作者于2012-11-16 10:04:12编辑过]

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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/11/16 10:11:00 [只看该作者]

 楼主,你是想筛选同级的行吗?直接比较字符数不行么?

Dim s As String = Tables("综合部物品分类设置_综合部物品分类设置Table1").current("分类编号")
Tables("综合部物品分类设置_综合部物品分类设置Table1").filter = "len(分类编号) = " & s.Length

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


加好友 发短信
等级:五尾狐 帖子:1165 积分:9032 威望:0 精华:1 注册:2011/5/25 16:33:00
  发帖心情 Post By:2012/11/16 10:32:00 [只看该作者]

麻烦了~!

您那代码是筛选出相同长度的行,我的想法是:比如下图的我选择的是01.03.02  ,我要筛选的是01.03开头的同级行,而不是全部的同级行


图片点击可在新窗口打开查看此主题相关图片如下:2.jpg
图片点击可在新窗口打开查看



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


加好友 发短信
等级:五尾狐 帖子:1165 积分:9032 威望:0 精华:1 注册:2011/5/25 16:33:00
  发帖心情 Post By:2012/11/16 10:35:00 [只看该作者]

以下是引用lin_hailun在2012-11-16 10:11:00的发言:
 楼主,你是想筛选同级的行吗?直接比较字符数不行么?

Dim s As String = Tables("综合部物品分类设置_综合部物品分类设置Table1").current("分类编号")
Tables("综合部物品分类设置_综合部物品分类设置Table1").filter = "len(分类编号) = " & s.Length


有个很奇怪的地方 filter 后面的条件 不是需要 “ ” 括起来吗  您这怎么不需要?

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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/11/16 10:37:00 [只看该作者]

 哦哦,那就这样。

Dim s As String = Tables("综合部物品分类设置_综合部物品分类设置Table1").current("分类编号")
Dim i As Integer = s.LastIndexOf(".")
s = s.SubString(0,i)

Tables("综合部物品分类设置_综合部物品分类设置Table1").filter = "Left(分类编号, " & i & ") = s And len(分类编号) = " & s.Length

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