@MiPakTeh , I guess that you want to get the string that the occur times is 3, right?
If so, Please try the following code example in new button click event
public List<Exmaple>Getduplicates(ListBox listBox, string[] find)
{
var query = find.GroupBy(x => x).
Where(g => g.Count() ==3)
.Select(y => new Exmaple{ Element = y.Key, Counter = y.Count() })
.ToList();
return query;
}
private void button3_Click(object sender, EventArgs e)
{
listBox3.Items.Add(listBox2.Items[0]);
listBox4.Items.Add(listBox2.Items[1]);
listBox5.Items.Add(listBox2.Items[2]);
var StringToCheck = listBox2.Items[0].ToString().Split(',');
foreach (var S in StringToCheck)
{
char[] arr = S.ToCharArray();
Console.WriteLine(arr[0].ToString());
string[] find = new[] {
arr[0].ToString() + arr[1].ToString() + arr[0].ToString(),
arr[0].ToString() + arr[1].ToString() + arr[1].ToString(),
arr[0].ToString() + arr[1].ToString() + arr[2].ToString(),
arr[0].ToString() + arr[1].ToString() + arr[3].ToString(),
arr[0].ToString() + arr[2].ToString() + arr[0].ToString(),
arr[0].ToString() + arr[2].ToString() + arr[1].ToString(),
arr[0].ToString() + arr[2].ToString() + arr[2].ToString(),
arr[0].ToString() + arr[2].ToString() + arr[3].ToString(),
arr[0].ToString() + arr[3].ToString() + arr[0].ToString(),
arr[0].ToString() + arr[3].ToString() + arr[1].ToString(),
arr[0].ToString() + arr[3].ToString() + arr[2].ToString(),
arr[0].ToString() + arr[3].ToString() + arr[3].ToString(),
arr[1].ToString() + arr[0].ToString() + arr[0].ToString(),
arr[1].ToString() + arr[0].ToString() + arr[1].ToString(),
arr[1].ToString() + arr[0].ToString() + arr[2].ToString(),
arr[1].ToString() + arr[0].ToString() + arr[3].ToString(),
arr[1].ToString() + arr[2].ToString() + arr[0].ToString(),
arr[1].ToString() + arr[2].ToString() + arr[1].ToString(),
arr[1].ToString() + arr[2].ToString() + arr[2].ToString(),
arr[1].ToString() + arr[2].ToString() + arr[3].ToString(),
arr[1].ToString() + arr[3].ToString() + arr[0].ToString(),
arr[1].ToString() + arr[3].ToString() + arr[1].ToString(),
arr[1].ToString() + arr[3].ToString() + arr[2].ToString(),
arr[1].ToString() + arr[3].ToString() + arr[3].ToString(),
arr[2].ToString() + arr[0].ToString() + arr[0].ToString(),
arr[2].ToString() + arr[0].ToString() + arr[1].ToString(),
arr[2].ToString() + arr[0].ToString() + arr[2].ToString(),
arr[2].ToString() + arr[0].ToString() + arr[3].ToString(),
arr[2].ToString() + arr[1].ToString() + arr[0].ToString(),
arr[2].ToString() + arr[1].ToString() + arr[1].ToString(),
arr[2].ToString() + arr[1].ToString() + arr[2].ToString(),
arr[2].ToString() + arr[1].ToString() + arr[3].ToString(),
arr[2].ToString() + arr[3].ToString() + arr[0].ToString(),
arr[2].ToString() + arr[3].ToString() + arr[1].ToString(),
arr[2].ToString() + arr[3].ToString() + arr[2].ToString(),
arr[2].ToString() + arr[3].ToString() + arr[3].ToString(),
arr[3].ToString() + arr[0].ToString() + arr[0].ToString(),
arr[3].ToString() + arr[0].ToString() + arr[1].ToString(),
arr[3].ToString() + arr[0].ToString() + arr[2].ToString(),
arr[3].ToString() + arr[0].ToString() + arr[3].ToString(),
arr[3].ToString() + arr[1].ToString() + arr[0].ToString(),
arr[3].ToString() + arr[1].ToString() + arr[1].ToString(),
arr[3].ToString() + arr[1].ToString() + arr[2].ToString(),
arr[3].ToString() + arr[1].ToString() + arr[3].ToString(),
arr[3].ToString() + arr[2].ToString() + arr[0].ToString(),
arr[3].ToString() + arr[2].ToString() + arr[1].ToString(),
arr[3].ToString() + arr[2].ToString() + arr[2].ToString(),
arr[3].ToString() + arr[2].ToString() + arr[3].ToString(),};
var query = Getduplicates(listBox3, find);
foreach (var item in query)
{
listBox3.Items.Add(item.Element + "->" + item.Counter);
}
}
StringToCheck = listBox2.Items[1].ToString().Split(',');
foreach (var S in StringToCheck)
{
char[] arr = S.ToCharArray();
Console.WriteLine(arr[0].ToString());
string[] find = new[] {
arr[0].ToString() + arr[1].ToString() + arr[0].ToString(),
arr[0].ToString() + arr[1].ToString() + arr[1].ToString(),
arr[0].ToString() + arr[1].ToString() + arr[2].ToString(),
arr[0].ToString() + arr[1].ToString() + arr[3].ToString(),
arr[0].ToString() + arr[2].ToString() + arr[0].ToString(),
arr[0].ToString() + arr[2].ToString() + arr[1].ToString(),
arr[0].ToString() + arr[2].ToString() + arr[2].ToString(),
arr[0].ToString() + arr[2].ToString() + arr[3].ToString(),
arr[0].ToString() + arr[3].ToString() + arr[0].ToString(),
arr[0].ToString() + arr[3].ToString() + arr[1].ToString(),
arr[0].ToString() + arr[3].ToString() + arr[2].ToString(),
arr[0].ToString() + arr[3].ToString() + arr[3].ToString(),
arr[1].ToString() + arr[0].ToString() + arr[0].ToString(),
arr[1].ToString() + arr[0].ToString() + arr[1].ToString(),
arr[1].ToString() + arr[0].ToString() + arr[2].ToString(),
arr[1].ToString() + arr[0].ToString() + arr[3].ToString(),
arr[1].ToString() + arr[2].ToString() + arr[0].ToString(),
arr[1].ToString() + arr[2].ToString() + arr[1].ToString(),
arr[1].ToString() + arr[2].ToString() + arr[2].ToString(),
arr[1].ToString() + arr[2].ToString() + arr[3].ToString(),
arr[1].ToString() + arr[3].ToString() + arr[0].ToString(),
arr[1].ToString() + arr[3].ToString() + arr[1].ToString(),
arr[1].ToString() + arr[3].ToString() + arr[2].ToString(),
arr[1].ToString() + arr[3].ToString() + arr[3].ToString(),
arr[2].ToString() + arr[0].ToString() + arr[0].ToString(),
arr[2].ToString() + arr[0].ToString() + arr[1].ToString(),
arr[2].ToString() + arr[0].ToString() + arr[2].ToString(),
arr[2].ToString() + arr[0].ToString() + arr[3].ToString(),
arr[2].ToString() + arr[1].ToString() + arr[0].ToString(),
arr[2].ToString() + arr[1].ToString() + arr[1].ToString(),
arr[2].ToString() + arr[1].ToString() + arr[2].ToString(),
arr[2].ToString() + arr[1].ToString() + arr[3].ToString(),
arr[2].ToString() + arr[3].ToString() + arr[0].ToString(),
arr[2].ToString() + arr[3].ToString() + arr[1].ToString(),
arr[2].ToString() + arr[3].ToString() + arr[2].ToString(),
arr[2].ToString() + arr[3].ToString() + arr[3].ToString(),
arr[3].ToString() + arr[0].ToString() + arr[0].ToString(),
arr[3].ToString() + arr[0].ToString() + arr[1].ToString(),
arr[3].ToString() + arr[0].ToString() + arr[2].ToString(),
arr[3].ToString() + arr[0].ToString() + arr[3].ToString(),
arr[3].ToString() + arr[1].ToString() + arr[0].ToString(),
arr[3].ToString() + arr[1].ToString() + arr[1].ToString(),
arr[3].ToString() + arr[1].ToString() + arr[2].ToString(),
arr[3].ToString() + arr[1].ToString() + arr[3].ToString(),
arr[3].ToString() + arr[2].ToString() + arr[0].ToString(),
arr[3].ToString() + arr[2].ToString() + arr[1].ToString(),
arr[3].ToString() + arr[2].ToString() + arr[2].ToString(),
arr[3].ToString() + arr[2].ToString() + arr[3].ToString(),};
var query = Getduplicates(listBox4, find);
foreach (var item in query)
{
listBox4.Items.Add(item.Element + "->" + item.Counter);
}
}
StringToCheck = listBox2.Items[2].ToString().Split(',');
foreach (var S in StringToCheck)
{
char[] arr = S.ToCharArray();
Console.WriteLine(arr[0].ToString());
string[] find = new[] {
arr[0].ToString() + arr[1].ToString() + arr[0].ToString(),
arr[0].ToString() + arr[1].ToString() + arr[1].ToString(),
arr[0].ToString() + arr[1].ToString() + arr[2].ToString(),
arr[0].ToString() + arr[1].ToString() + arr[3].ToString(),
arr[0].ToString() + arr[2].ToString() + arr[0].ToString(),
arr[0].ToString() + arr[2].ToString() + arr[1].ToString(),
arr[0].ToString() + arr[2].ToString() + arr[2].ToString(),
arr[0].ToString() + arr[2].ToString() + arr[3].ToString(),
arr[0].ToString() + arr[3].ToString() + arr[0].ToString(),
arr[0].ToString() + arr[3].ToString() + arr[1].ToString(),
arr[0].ToString() + arr[3].ToString() + arr[2].ToString(),
arr[0].ToString() + arr[3].ToString() + arr[3].ToString(),
arr[1].ToString() + arr[0].ToString() + arr[0].ToString(),
arr[1].ToString() + arr[0].ToString() + arr[1].ToString(),
arr[1].ToString() + arr[0].ToString() + arr[2].ToString(),
arr[1].ToString() + arr[0].ToString() + arr[3].ToString(),
arr[1].ToString() + arr[2].ToString() + arr[0].ToString(),
arr[1].ToString() + arr[2].ToString() + arr[1].ToString(),
arr[1].ToString() + arr[2].ToString() + arr[2].ToString(),
arr[1].ToString() + arr[2].ToString() + arr[3].ToString(),
arr[1].ToString() + arr[3].ToString() + arr[0].ToString(),
arr[1].ToString() + arr[3].ToString() + arr[1].ToString(),
arr[1].ToString() + arr[3].ToString() + arr[2].ToString(),
arr[1].ToString() + arr[3].ToString() + arr[3].ToString(),
arr[2].ToString() + arr[0].ToString() + arr[0].ToString(),
arr[2].ToString() + arr[0].ToString() + arr[1].ToString(),
arr[2].ToString() + arr[0].ToString() + arr[2].ToString(),
arr[2].ToString() + arr[0].ToString() + arr[3].ToString(),
arr[2].ToString() + arr[1].ToString() + arr[0].ToString(),
arr[2].ToString() + arr[1].ToString() + arr[1].ToString(),
arr[2].ToString() + arr[1].ToString() + arr[2].ToString(),
arr[2].ToString() + arr[1].ToString() + arr[3].ToString(),
arr[2].ToString() + arr[3].ToString() + arr[0].ToString(),
arr[2].ToString() + arr[3].ToString() + arr[1].ToString(),
arr[2].ToString() + arr[3].ToString() + arr[2].ToString(),
arr[2].ToString() + arr[3].ToString() + arr[3].ToString(),
arr[3].ToString() + arr[0].ToString() + arr[0].ToString(),
arr[3].ToString() + arr[0].ToString() + arr[1].ToString(),
arr[3].ToString() + arr[0].ToString() + arr[2].ToString(),
arr[3].ToString() + arr[0].ToString() + arr[3].ToString(),
arr[3].ToString() + arr[1].ToString() + arr[0].ToString(),
arr[3].ToString() + arr[1].ToString() + arr[1].ToString(),
arr[3].ToString() + arr[1].ToString() + arr[2].ToString(),
arr[3].ToString() + arr[1].ToString() + arr[3].ToString(),
arr[3].ToString() + arr[2].ToString() + arr[0].ToString(),
arr[3].ToString() + arr[2].ToString() + arr[1].ToString(),
arr[3].ToString() + arr[2].ToString() + arr[2].ToString(),
arr[3].ToString() + arr[2].ToString() + arr[3].ToString(),};
var query = Getduplicates(listBox5, find);
foreach (var item in query)
{
listBox5.Items.Add(item.Element + "->" + item.Counter);
}
}
}
public class Exmaple
{
public string Element { get; set; }
public int Counter { get; set; }
}
Result:
Best Regards,
Jack
If the answer is the right solution, please click "Accept Answer" and upvote it.If you have extra questions about this answer, please click "Comment".
Note: Please follow the steps in our documentation to enable e-mail notifications if you want to receive the related email notification for this thread.