Foxtable(狐表)用户栏目专家坐堂 → 请教袍哥字符比较


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

主题:请教袍哥字符比较

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/12/29 10:18:00 [显示全部帖子]

For Each dr As DataRow In DataTables("表A").DataRows
    For i As Integer = 0 To dr("第一列").length - 2
        Dim str As String = dr("第一列").Substring(i, 2)
        If dr("第二列").indexOf(str) >= 0 Then
            For j As Integer = 3 To dr("第一列").length - i
                Dim s = dr("第一列").Substring(i, j)
                If dr("第二列").indexOf(s) >= 0 Then
                    str = s
                End If
            Next
            msgbox(str & " " & dr("第二列"))
            Exit For
        End If
    Next
Next
[此贴子已经被作者于2015/12/29 10:23:40编辑过]

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/12/29 10:26:00 [显示全部帖子]

For Each dr As DataRow In DataTables("表A").DataRows
    For i As Integer = 0 To dr("第一列").length - 2
        Dim str As String = dr("第一列").Substring(i, 2)
        Dim fdr As DataRow = DataTables("表A").find("第二列 like '%" & str & "%'")
        If fdr IsNot Nothing Then
            For j As Integer = 3 To dr("第一列").length - i
                Dim s = dr("第一列").Substring(i, j)
                fdr = DataTables("表A").find("第二列 like '%" & s & "%'")
                If fdr IsNot Nothing Then
                    str = s
                Else
                    Exit For
                End If
            Next
            msgbox(dr("第一列") & " " & str & " " & fdr("第二列"))
            Exit For
        End If
    Next
Next

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/12/29 10:42:00 [显示全部帖子]

认认真真看懂2、3楼代码。

 

看懂2、3楼,自己做个函数来调用即可。


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/12/29 11:12:00 [显示全部帖子]

看6楼啊,能看懂代码改成自己的啊。

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/12/29 11:26:00 [显示全部帖子]

已经写完,看2、3楼。

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/12/29 11:38:00 [显示全部帖子]

代码没问题,不会报错。

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/12/29 11:39:00 [显示全部帖子]

看不懂代码,就重新看语法。

 

意思就是不断截取不同长度的字符去比较而已啊。


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/12/29 11:46:00 [显示全部帖子]

不报错

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/12/29 12:05:00 [显示全部帖子]

For Each dr As DataRow In DataTables("表A").DataRows
    For i As Integer = 0 To dr("第一列").length - 2
        Dim str As String = dr("第一列").Substring(i, 2)
        Dim fdr As DataRow = DataTables("表A").find("第二列 like '%" & str & "%'")
        If fdr IsNot Nothing Then
            For j As Integer = 3 To dr("第一列").length - i
                Dim s = dr("第一列").Substring(i, j)
                Dim ffdr = DataTables("表A").find("第二列 like '%" & s & "%'")
                If ffdr IsNot Nothing Then
                    str = s
                Else
                    Exit For
                End If
            Next
            msgbox(dr("第一列") & " " & str & " " & fdr("第二列"))
            Exit For
        End If
    Next
Next

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/12/29 15:00:00 [显示全部帖子]

For Each dr As DataRow In DataTables("表A").DataRows
    For i As Integer = 0 To dr("第一列").length - 2
        Dim str As String = dr("第一列").Substring(i, 2)
        Dim drs As List(of DataRow) = DataTables("表A").Select("第二列 like '%" & str & "%'")
        For Each cdr As DataRow In drs
            Dim temp As String = str
            For j As Integer = 3 To dr("第一列").length - i
                Dim s = dr("第一列").Substring(i, j)
                If cdr("第二列") Like "*" & s & "*" Then
                    temp = s
                Else
                    Exit For
                End If
            Next
            msgbox(dr("第一列") & " " & temp & " " & cdr("第二列"))
        Next
        'If drs.count > 0 Then Exit For
    Next
Next

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