比较两个包含字符串的数组?

时间:2009-06-11 06:59:26

标签: c#

我有一个文本文件,我希望阅读并分成单词。

我有一个RichTextBox,我会从中获取文字并分成单词。

我希望能够比较两个数组中的单词,然后显示一条消息。

我怎样才能在c#中做到这一点?

3 个答案:

答案 0 :(得分:2)

您可以将从文本文件中获得的单词放入HashSet,将从ricktextbox1获得的单词放入另一个HashSet并与之交叉。

var set1 = new HashSet<string>(words1);
var set2 = new HashSet<string>(words2);
set1.IntersectWith(set2);

顺便说一句,HashSet类是用.Net 3.5

引入的

答案 1 :(得分:0)

HashSet的

答案 2 :(得分:0)

你可以随时使用蛮力,查看一个数组中的单词并检查它们是否在另一个数组中。对于在两个数组中找到的每个字符串,您可以标记字符串或将其复制到单独的数组中,以用于两个数组中的字符串。完成后,只需打印/计算新数组中的字符串。

请注意,这是一个非常缓慢的方法,有更好的方法来做到这一点,但是你没有提到速度是至关重要的,这将使你到那里。

你可以尝试用HashSet做这个(就像Josh Einstein推荐的那样),我不熟悉那个集合,但快速搜索告诉我它可以很好地工作。

相关问题