-4

我需要来自结果字符串的单个不同字符串值。

我的字符串变量返回值如下:

string result = "1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1";    //  from here I'll need  2

or string result = "1,1,1,1,1,1,1,1,4,1,1,1,1,1,1,1";    //  from here I'll need  4

or string result = "1,1,1,1,1,1,1,1,1,1,1,1,1,1,3,1";     //  from here I'll need  3
4

5 回答 5

1

只需将 coma(,) 和 1 替换为空白('')即可。

string single_value = result.Replace(",","").Replace("1","");
于 2013-06-14T07:03:17.650 回答
1
var finalValue = result.Replace(",","").Replace("1","");
于 2013-06-14T07:09:19.553 回答
1

如果您试图获得永远不会出现多次的值,请尝试以下代码

 string result = "1,1,1,1,1,1,1,1,1,1,1,1,1,1,3,1";    
 var UniqueElement = result.GroupBy(x => x)
                                           .Where(g => g.Count() == 1)
                                           .Select(g => g.Key)
                                           .ToList();
                                           Console.WriteLine(UniqueElement[0]);

即使您具有除“1”以外的其他值,这也将起作用

示例:“,1,1,1,1,2,2,2,4,1,1,1,1,1,1,1”

于 2013-06-14T07:16:18.523 回答
0

您可以使用Enumerable.Max, Max() 将从字符串返回最大字符值。如果您的字符串仅包含逗号和数字,那将是最大数字,结果当然是 char:

result.Max();
于 2013-06-14T07:12:24.417 回答
0

如果您只想要出现一次的值,那么这将起作用。

var value = result.Split(',')
  .GroupBy(v => v)
  .Where(g => g.Count() == 1)
  .First()
  .Key;
于 2013-06-14T07:19:31.620 回答