我有2个从我的数据库中提取的名字。
string query1 = SELECT FIRSTNAME FROM STUDENT;
string query2 = SELECT FIRSTNAME FROM CUSTOMER;
来自query1的结果是说RESET,来自query2的结果是例如SET。我想比较2个字符串并将匹配作为整数并计算百分比。在上面的例子中匹配是3.所以%将是3/5 * 100.我可以使用哪个C#函数来比较字符串?我想在C#代码中进行比较,而不是使用SQL。
答案 0 :(得分:0)
给定两个字符串,长度为n的S和长度为m的R,其中n float percentage = 0;
int index = R.substring(S);
if(index > 0) {
percentage = R.Length / S.Length * 100;
}
答案 1 :(得分:0)
这将检查字符串是否是另一个字符串的子字符串(如示例RESET vs SET中所示)。注意它是自反的,所以RESET vs SET == SET vs RESET。如果你需要检查子串(所以RESE vs SET == 2/4 == 0.5或其他),那么你需要解释你想要的东西。
public static double Percentage(string str1, string str2) {
// Handling of empty strings. No divisions by zero here!
if (string.IsNullOrEmpty(str1) || string.IsNullOrEmpty(str2)) {
return 0.0;
}
// str2 is contained in str1
if (str1.Contains(str2)) {
return 100.0 * str2.Length / str1.Length;
}
// str1 is contained in str2
if (str2.Contains(str1)) {
return 100.0 * str1.Length / str2.Length;
}
// No matching
return 0.0;
}