How to trim each string element in the string array without using loop?
var gender = from row in excel.Worksheet()
select row["Gender *"].Value.ToString(开发者_Go百科);
string[] genderArray = gender.ToArray().Distinct().ToArray();
in this case the content of genderArray are { "F" , "M" , "M "}
i want that genderArray should only contain { "F" , "M" }
var gender = (from row in excel.Worksheet()
select row["Gender *"].Value.ToString()) ;
string[] genderArray = gender.ToArray().Distinct().Select(g=>g.Trim()).ToArray();
You can also do the .Trim in the first query against Value.ToString().Trim(). Edited: I might have misplaced the select in the query.
var gender = (from row in excel.Worksheet()
select row["Gender *"].Value.ToString().Trim()) ;
Have you tried using String.Trim()
?
var gender = (from row in excel.Worksheet()
select row["Gender *"].Value.ToString().Trim()) ;
string[] genderArray = gender.ToArray().Distinct().ToArray();
Here's how I would tackle it:
var data = new List<string> {"F", "M", "M "};
var gender = data.Select(x => x.Trim()).Distinct().ToArray();
Or if you prefer:
var gender = (from x in data select x.Trim()).Distinct().ToArray();
精彩评论