テキスト中に2回以上出現するすべての文字を返す関数を書く必要があります。機能なしで使用すると問題はありません(たとえば、ボタンをクリックするなど)。それは私がそれを行う方法は次のとおりです。C#。 charを返すには?
for (int i = 0; i < alph.Length; i++) // alph is my text(string)
{
int count = allText.Split(alphCh[i]).Length - 1;
if (count >= 2)
listView2.Items.Add(alphCh[i].ToString());
}
私は関数を書く方法ですそれ:
public char[] chars2(string text)
{
char[] allChar = text.ToCharArray();
string allText = text.ToString();
string allTextL = text.ToLower();
string alph = "abcdefghijklmnopqrstuvwxyz";
char[] alphCh = alph.ToCharArray();
char[] result = new char[0];
int allcount = 0;
for (int i = 0; i < alph.Length; i++)
{
int count = allText.Split(alphCh[i]).Length - 1;
if (count >= 2)
{
allcount++;
result = new char[allcount];
for (int j = 0; j < allcount; j++)
{
result[j] = alphCh[i];
return result;
}
}
}
return result;
}
しかし、関数は、テキストに2回以上発生しただけで最初の文字を返します。たとえば、abcbca-funcはaを返し、funcはa、b、cを返してListViewに書き込むとします。何が間違っていますか?私はあなたの助けが必要です。 〜
リターンは、ループを停止します。 –
いいえ、テキストのどこにでも2回以上出現する可能性があります:abcdabcd、a、b、c、dも返します。 – Daria
ヨカイ・ティマー、やっぱり、どうしたらいいですか?私は続けて書くようにしましたが、それは有用ではありません。 – Daria