我在找一个最长的常用词c#implementation我遇到的大多数样本都是逐字比较的。
换句话说,
string1 = access
string2 = advised
应该从函数返回空输出
有样本代码吗?
最佳答案
如果你所说的单词是指这些字母,用punktuation把它们与其他字母分开,试试这个:
private String longestCommonWord(String s1, String s2)
{
String[] seperators = new String[] { " ", ",", ".", "!", "?", ";" };
var result = from w1 in s1.Split(seperators, StringSplitOptions.RemoveEmptyEntries)
where (from w2 in s2.Split(seperators, StringSplitOptions.RemoveEmptyEntries)
where w2 == w1
select w2).Count() > 0
orderby w1.Length descending
select w1;
if (result.Count() > 0)
{
return result.First();
}
else
{
return null;
}
}
这可能不是最优雅的方法,但它对我有效。=)
关于c# - C#最长的常用单词样本,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2294728/