如果要检查要使用两次的任何字,使用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);
您是否试过_anything_? –
“My String My String”和“”“'和'”MyString MyString abcd“'怎么办? –
'MyString NotMyString'包含两次相同的*字符 - 它只包含两次相同的*字。你需要在你的要求中更加精确。 –