以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]if判断语句出错 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=95261) |
||||
-- 作者:铜豆 -- 发布时间:2017/1/14 14:35:00 -- [求助]if判断语句出错 Select Case e.DataCol.Name Case "访客来源" Dim Arys1 As List(Of String()) Arys1 = DataTables("信息库").GetValues("搜索工具|工具") Dim str As String = e.DataRow("访客来源") For Each Ary As String() In Arys1 If str.Contains(Ary(0)) Then e.DataRow("搜索工具") = Ary(1) Else e.DataRow("搜索工具") ="电脑" End If Next End Select 只要加上红色这段,所有的判断只会出现电脑,不会出现Ary(1),这是为什么呢? 要到达不满足str.Contains(Ary(0))时显示电脑(电脑),如何修改代码
[此贴子已经被作者于2017/1/14 14:39:35编辑过]
|
||||
-- 作者:有点蓝 -- 发布时间:2017/1/14 15:24:00 -- 代码没有问题,上例子看看 |
||||
-- 作者:铜豆 -- 发布时间:2017/1/14 22:12:00 --
[此贴子已经被作者于2017/1/14 22:29:37编辑过]
|
||||
-- 作者:铜豆 -- 发布时间:2017/1/14 22:24:00 -- 判断出错,同时老师帮我看看字符串提取和数字提取 |
||||
-- 作者:有点色 -- 发布时间:2017/1/15 11:40:00 -- Select Case e.DataCol.Name Case "访客来源" Dim Arys1 As List(Of String()) Arys1 = DataTables("信息库").GetValues("搜索工具|工具", "搜索工具 is not null") Dim str As String = e.DataRow("访客来源") Dim flag As Boolean = True For Each Ary As String() In Arys1 If str.Contains(Ary(0)) Then e.DataRow("搜素工具") = Ary(1) flag = False End If Next If flag Then e.DataRow("搜素工具") ="电脑" End Select |
||||
-- 作者:铜豆 -- 发布时间:2017/1/15 19:31:00 --
|
||||
-- 作者:有点色 -- 发布时间:2017/1/16 3:37:00 -- 你要比较的是所有的arys内容,只有全部比较完成,才能得到结果。 |
||||
-- 作者:铜豆 -- 发布时间:2017/1/16 9:32:00 -- 老师辛苦了,这么晚都没休息,老师有没有关于数字和字符串混合在一起,但要从中字符串和数字分别提取代码怎么写,上传实例已有样式,谢谢老师 |
||||
-- 作者:有点色 -- 发布时间:2017/1/16 9:54:00 -- 参考
Dim str As String = "啊啊啊123哦哦哦456"
---------
Dim str As String = "啊啊啊123哦哦哦456" |
||||
-- 作者:铜豆 -- 发布时间:2017/1/16 10:03:00 -- 老师这是正则吗?帮助里有相关内容吗? |