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


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

主题:请教袍哥字符比较

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


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

什么称之为重复的不显示?举例说明。

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


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

加上代码

 

If drs.count > 0 Then Exit For


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/12/30 20:54: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
            If dr("第一列") <> dr("第二列") Then
                'If dr("第一列") <> cdr("第二列") Then
                msgbox(dr("第一列") & " " & temp & " " & cdr("第二列"))
            End If
        Next
        If drs.count > 0 Then Exit For
    Next
Next

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


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

就是这样模糊匹配的,这个是最简单的方法。

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


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

例子,什么不行啊。

 


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


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

早说你是这样的逻辑

 

DataTables("表B").datarows.Clear
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
            If dr("第一列") <> cdr("第二列") Then
                Dim ndr As DataRow = DataTables("表B").find("第一列 = '" & dr("第一列") & "' and 第二列 = '" & cdr("第二列") & "'")
                If ndr Is Nothing Then
                    ndr = DataTables("表B").AddNew
                    ndr("第一列") = dr("第一列")
                    ndr("第二列") = cdr("第二列")
                End If
            End If
        Next
    Next
Next


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