2

こんにちは、txtbox から文字の出現回数を取得しようとしています。まだ答えが見つからない. 例: 私は文で与える. 「こんにちは!.」リストボックスには...

H - 2 回 e - 3 回 ....

これは私のコードです...

  For i = 0 To txtSent.Text.Length - 1

        If (Char.IsLetter(txtSent.Text(i))) Then
            Dim str = Len(txtSent.Text) - Len(Replace(txtSen.Text, txtSen.Text(i), ""))

            lstOutput.Items.Add(txtZin.Text(i) & " occurs " & str & " time(s)")
        End If

    Next´

しかし、「m」のすべての文字を繰り返すのではなく、「m - 5」にする必要があります

手伝って頂けますか?

4

1 に答える 1

1

この記事を見てください。まさにあなたが求めていることをします。http://msdn.microsoft.com/en-us/library/bb397940.aspx

これは vb.net のメソッドで、あなたにも役立ちます。

    Public Function GetNumSubstringOccurrences (文字列としての ByVal テキスト、文字列としての ByVal 検索) 整数として
        Dim num As Integer = 0
        Dim pos As Integer = 0
        If Not String.IsNullOrEmpty(text) AndAlso Not String.IsNullOrEmpty(search) Then
            text.IndexOf(search.ToLower(), pos) > -1 の間
                数 += 1
                pos = text.ToLower().IndexOf(search.ToLower(), pos) + search.Length + 1
            終了
        終了条件
        戻り値
    終了機能

アルファベットをループするには、次のようにします。

Dim s As String = "ssssddfffccckkkllkeeiol"
        For Each c In "ABCDEFGHIJKLMNOPQRSTUVWXYZ".ToCharArray()
            Console.WriteLine(GetNumSubstringOccurrences(s, c))
        次
于 2013-06-10T18:22:53.140 に答える