[VB.net]文字列内検索で単語のカウント取得!重複個数や特定文字で探す方法

[VB.net]文字列検索で単語のカウントの取り方!重複個数や特定文字で探す方法VB.net
広告

VB.NETで文字列内で単語を検索しその出現回数を数える方法はプログラミングにおいて基本的でありテキストデータの解析や処理に役立ちます。

この記事では初心者向けにVB.NETを使用した文字列の単語検索とカウントについて詳しく解説します。

単一の単語からのカウント方法と複数の単語から同時にカウントする方法を学びましょう。

広告

文字列内検索で単語のカウント取得

VB.NETで単一の単語を検索し、その出現回数を数える基本的な手順は以下の通りです。

Dim inputString As String = "VB.NETはVB言語の一部であり、扱いやすい構文を提供します。VB.NETは単語を検索してカウントすることができます。"
Dim targetWord As String = "VB.NET"

Dim wordsArray() As String = inputString.Split(" "c)
Dim count As Integer = 0

For Each word As String In wordsArray
    If word.Equals(targetWord, StringComparison.OrdinalIgnoreCase) Then
        count += 1
    End If
Next

Console.WriteLine($"単語「{targetWord}」の出現回数は {count} 回です。")
//結果:単語「VB.NET」の出現回数は 2 回です。

文字列から複数単語の重複個数を探す

複数の単語から同時に検索してカウントする場合は、以下のように行います。

Dim inputString As String = "VB.NETはVB言語の一部であり、扱いやすい構文を提供します。VB.NETは単語を検索してカウントすることができます。"
Dim targetWords() As String = {"VB.NET", "単語"}

Dim wordCounts As New Dictionary(Of String, Integer)
Dim totalOccurrences As Integer = 0

For Each targetWord As String In targetWords
    Dim wordCount = inputString.Split(" "c).Count(Function(word) word.Equals(targetWord, StringComparison.OrdinalIgnoreCase))
    wordCounts(targetWord) = wordCount
    totalOccurrences += wordCount
Next

Console.WriteLine("各単語の出現回数:")
For Each pair In wordCounts
    Console.WriteLine($"単語「{pair.Key}」の出現回数は {pair.Value} 回です。")
Next
Console.WriteLine($"合計の出現回数は {totalOccurrences} 回です。")

//結果:
単語「VB.NET」の出現回数は 2 回です。 
単語「単語」の出現回数は 1 回です。 
合計の出現回数は 3 回です。
広告

まとめ

VB.NETを使用して文字列内で単一の単語と複数の単語を検索し、その出現回数を数える方法について学びました。

これらの手法を活用することで、テキストデータの処理がスムーズに行えます。

ぜひ実際にコードを書きながら試してみてください。

タイトルとURLをコピーしました