如果有两个字符串
STR1 = '4567EEEEE'
STR2 = '1478EEEEE789625AAADDET'
求出STR1和STR2共有字符串EEEEE
有没有这样的函数STR1和STR2是不规则的字符串

解决方案 »

  1.   

    :|
    很难办啊!感觉比模式匹配还要麻烦,关注ing
      

  2.   

    将str1分解为数组
    从第一个字符开始匹配str2,如果成功,则将第12个字符合并,继续查找
    循环至末尾
      

  3.   

    仅设置为找出最长的匹配字符串,要判断别的,请自己改
    Private Sub Command1_Click()
    Dim Str1, Str2, Str_ts, FStr As String
    Dim i1, i2, SLen, R As Integer
    Dim StrLen As IntegerSLen = 2
    Str1 = "4567EEEEE"
    Str2 = "1478EEEEE789625AAADDET"If Len(Str1) > Len(Str2) Then
    Str_ts = Str1
    Str1 = Str2
    Str2 = Str_ts
    End IfStrLen = Len(Str1)For i1 = 1 To StrLen - 1
    R = 1
    For i2 = 2 To StrLen - i1 + 1
    Str_ts = Mid(Str1, i1, i2)
    R = InStr(R, Str2, Str_ts)
    If R > 0 Then
    If Len(FStr) < i2 Then FStr = Str_ts
    Else
    Exit For
    End If
    Next
    Next
    Label1.Caption = FStr
    End Sub
      

  4.   

    是不是要得到的字符所有的话应该是
    4
    5
    6
    7
    EEEEE 呢?
      

  5.   

    Dim bstr1 As String
    Dim bstr2 As StringPrivate Sub Command1_Click()
    cString bstr1, bstr2
    End SubPrivate Sub Form_Load()
     bstr1 = "4567EEEEEeee"
     bstr2 = "1478EEEEE789625AAADDET"
    End Sub
    Public Function cString(str1 As String, str2 As String)
      For i = 1 To Len(str1)
      For j = 1 To Len(str1)
        If InStr(str2, Mid(str1, i, j)) = 0 Then Exit For
        a = 1
      Next j
      If a = 1 Then
       If Mid(str1, i, j - 1) <> Mid(s, 1, Len(Mid(str1, i, j - 1))) Then List1.AddItem Mid(str1, i, j - 1)
        s = Mid(str1, i, j - 1)
        a = 0
      End If
     Next i
    End Function不知道这样算不算 嘿嘿
      

  6.   

    Public Function cString(str1 As String, str2 As String)
      For i = 1 To Len(str1)
      For j = 1 To Len(str1)
        If InStr(str2, Mid(str1, i, j)) = 0 Then Exit For
        a = 1
      Next j
      If a = 1 Then
       If Mid(str1, i, j - 1) <> Mid(s, 1, Len(Mid(str1, i, j - 1))) Then List1.AddItem Mid(str1, i, j - 1)
        s = Mid(str1, i, j - 1)
        a = 0
      End If
     Next i
    End Function
      

  7.   

    求EEEEE
    就是两个字符串相同的部分