単語が 2 回使用されているかどうかを確認するには、Split
関数を使用して文字列を単語に変換し、Group
カウントを取得します。
string input = "MyString MyString";
var words = input.Split().GroupBy(s => s).ToDictionary(
g => g.Key,
g => g.Count()
);
ディクショナリは、キーが単語であるとのペアwords
のセットになり、値は入力文字列での回数です。複数回出現する単語を検索する場合:key
value
bool hasDuplicateWords = words.Any(w => w.Value > 1);
複数回出現する単語を見つけるには:
var duplicateWords = words.Where(w => w.Value > 1);
編集:質問を編集した後、単純な文字列を解析しているようではなく、XML コードを解析しているようです。XML を操作するには、次のような XML パーサーを使用する必要があります (エディターではチェックされません)。
var input = "<Item> MyString <Item> <Item> MyString <Item>";
var xml = XElement.Parse(input);
bool hasDuplicateWords = xml.Children
.GroupBy(x => x.Name)
.Any(x => x.Count() > 1);