Чтобы найти повторяющиеся символы в строке с помощью VB.NET, вы можете использовать различные методы. Вот несколько примеров кода:
-
Метод с использованием словаря:
Imports System.Collections.Generic Public Module DuplicateCharactersFinder Public Sub Main() Dim input As String = "Hello, World!" Dim duplicates As New Dictionary(Of Char, Integer)() For Each c As Char In input If duplicates.ContainsKey(c) Then duplicates(c) += 1 Else duplicates(c) = 1 End If Next For Each pair As KeyValuePair(Of Char, Integer) In duplicates If pair.Value > 1 Then Console.WriteLine("Character '{0}' appears {1} times", pair.Key, pair.Value) End If Next End Sub End Module -
Метод с использованием LINQ:
Imports System.Linq Public Module DuplicateCharactersFinder Public Sub Main() Dim input As String = "Hello, World!" Dim duplicates = input.GroupBy(Function(c) c) _ .Where(Function(g) g.Count() > 1) _ .Select(Function(g) New With {Key .Character = g.Key, Key .Count = g.Count()}) For Each duplicate In duplicates Console.WriteLine("Character '{0}' appears {1} times", duplicate.Character, duplicate.Count) Next End Sub End Module -
Метод с использованием HashSet:
Imports System.Collections.Generic Public Module DuplicateCharactersFinder Public Sub Main() Dim input As String = "Hello, World!" Dim duplicates As New HashSet(Of Char)() Dim duplicateCharacters As New HashSet(Of Char)() For Each c As Char In input If duplicates.Contains(c) AndAlso Not duplicateCharacters.Contains(c) Then Console.WriteLine("Character '{0}' is duplicate", c) duplicateCharacters.Add(c) Else duplicates.Add(c) End If Next End Sub End Module