簡體   English   中英

從vb2005中的文本搜索獲取索引列表

[英]Getting a list of indexes from a text search in vb2005

我正在富文本框中的字符串上進行索引搜索,我有一個關鍵字列表,該文本框中需要使用不同的顏色。 如何在vb2005中對字符串進行搜索並獲取與文本匹配的索引列表?

這是一個相當簡單的解決方案。 請注意,它將在“四個”中找到單詞“我們的”。 如果不希望這樣,您可以寫一些東西來消除重疊的匹配。

Private Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
    Dim SearchText As String = "One Two Three Four"

    Dim Keywords As String() = {"One", "Four", "our"}

    Dim WordMatches As New Generic.List(Of WordMatch)

    For Each KeyWord As String In Keywords
        Dim i As Int32 = 0

        While i <> -1
            i = SearchText.IndexOf(KeyWord, i, System.StringComparison.OrdinalIgnoreCase)

            If i <> -1 Then
                Dim MyMatch As New WordMatch
                MyMatch.CharIndex = i
                MyMatch.Word = KeyWord
                WordMatches.Add(MyMatch)
                i += KeyWord.Length
            End If
        End While
    Next
End Sub

Private Structure WordMatch
    Public CharIndex As Int32
    Public Word As String
End Structure

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM