1

在比较两个字符串并使用 Asp.net 返回多少单词相同之后,我怎么能得到。

我在这里写了一些代码,但它只返回字符串的长度:

string x = "Sabih Khan Afridi Sabih Khan Afridi";
string y = "Sabih Afridi";
int z = x.Length; int t = y.Length;
Label1.Text = "Total lengths: !st->" +z.ToString()+" <<>> 2nd-"+t;
4

2 回答 2

1
string[] common = x.Split().Intersect(y.Split()).ToArray();
int count = common.Length;

抄袭检测并不像上面那样简单,你最好使用其中一个库,比如Anti-Plagiarismoss。它们是开源的,您也可以检查实现

于 2013-06-08T11:17:39.670 回答
0

使用Intersect获得相似的单词。

IEnumerable<string> listX = x.Split(' ').Distinct();
IEnumerable<string> listY = y.Split(' ').Distinct();

var similarWords = listX.Intersect(listY);
int numberOfSimilarWords = similarWords.Count();

更新:比较两个文件中的单词。您只需要阅读这些文件

var firstFile = File.ReadAllText(@"C:\firstfile.txt", Encoding.ASCII).Split(' ').ToList();
var secondFile =File.ReadAllText(@"C:\secondfile.txt", Encoding.ASCII).Split(' ').ToList();

var similarwords=firstFile.Intersect(secondFile);
于 2013-06-08T11:00:01.900 回答