如何修剪字符串数组中的每个字符串元素而不使用循环?

时间:2011-06-06 13:20:02

标签: c# .net arrays string

var gender = from row in excel.Worksheet()
             select row["Gender *"].Value.ToString();
string[] genderArray = gender.ToArray().Distinct().ToArray();

在这种情况下,genderArray的内容为{“F”,“M”,“M”}

我希望genderArray只包含{“F”,“M”}

4 个答案:

答案 0 :(得分:5)

var gender = (from row in excel.Worksheet()
                 select  row["Gender *"].Value.ToString()) ;
    string[]  genderArray = gender.ToArray().Distinct().Select(g=>g.Trim()).ToArray();

您还可以在针对Value.ToString()的第一个查询中执行.Trim.Trim()。 编辑:我可能在查询中放错了选择。

答案 1 :(得分:4)

var gender = (from row in excel.Worksheet() 
            select row["Gender *"].Value.ToString().Trim()) ;

答案 2 :(得分:1)

您是否尝试过使用String.Trim()

var gender = (from row in excel.Worksheet()
             select  row["Gender *"].Value.ToString().Trim()) ;
string[]  genderArray = gender.ToArray().Distinct().ToArray();

答案 3 :(得分:1)

以下是我将如何处理它:

var data = new List<string> {"F", "M", "M "};
var gender = data.Select(x => x.Trim()).Distinct().ToArray();

或者如果您愿意:

var gender = (from x in data select x.Trim()).Distinct().ToArray();