當前位置:編程學習大全網 - 編程軟體 - VBA代碼求助,遍歷相同的字母組合?

VBA代碼求助,遍歷相同的字母組合?

以下是修改後的VBA代碼,用於遍歷1830個單詞表中至少三個字母相同的字母組合,並輸出相同的部分:

Sub FindCommonLetterCombinations()

'定義變量

Dim words() As String

Dim i, j, k, l, m As Integer

Dim commonLetters As String

'讀取單詞表

words = Split("apple,banana,pear,orange,grape,pineapple,kiwi,strawberry,melon,papaya,durian,peach,lemon,lime,cherry,blueberry,raspberry,mango,watermelon,avocado,apricot,fig,guava", ",")

'遍歷單詞表

For i = 0 To UBound(words)

For j = i + 1 To UBound(words)

'查找相同的字母組合

For k = 1 To Len(words(i))

For l = 1 To Len(words(j))

If Mid(words(i), k, 3) = Mid(words(j), l, 3) And Len(words(i)) >= k + 2 And Len(words(j)) >= l + 2 Then

For m = 4 To Len(words(i)) - (k - 1)

If Mid(words(i), k + m - 1, 1) <> Mid(words(j), l + m - 1, 1) Then

Exit For

Else

If m >= 3 Then

commonLetters = Mid(words(i), k, m)

Debug.Print "單詞 " & words(i) & " 和 " & words(j) & " ***享字母組合: " & commonLetters

End If

End If

Next m

End If

Next l

Next k

Next j

Next i

End Sub

這段代碼會輸出所有至少有三個字母相同的字母組合,並附上它們所屬的兩個單詞。為了避免重復輸出相同的字母組合,代碼只會在第壹次找到時輸出,並忽略後續重復出現的情況。

需要註意的是,由於要考慮多種可能的組合,代碼執行時間可能較長,特別是在單詞列表較大時。如果您需要處理更大的數據集或提高代碼效率,可以考慮使用其他算法或工具進行優化。

  • 上一篇:Rhino怎麽繪制壹個簡單的花瓶?花瓶模型怎麽通過Rhino繪制出來?
  • 下一篇:SolidWorks中的螺栓螺母等標準件從哪裏來?
  • copyright 2024編程學習大全網