我该怎么做:
string list = "one; two; three;four";
List<string> values = new List<string>();
string[] tempValues = list.Split(new char[] {';'}, StringSplitOptions.RemoveEmptyEntries);
foreach (string tempValue in tempValues)
{
values.Add(tempValue.Trim());
}
在一行中,如下所示:
List<string> values = extras.Split(';').ToList().ForEach( x => x.Trim()); //error
答案 0 :(得分:7)
如果要对Select
中的每个实例执行转换,则需要使用IEnumerable<T>
。
List<string> values = list.Split(new char[] {';'}, StringSplitOptions.RemoveEmptyEntries).Select(x => x.Trim()).ToList();
答案 1 :(得分:3)
简单 - 使用LINQ选择方法:
var values = "one; two; three;four".Split(new char[] {';'}, StringSplitOptions.RemoveEmptyEntries).Select(str => str.Trim());
答案 2 :(得分:-1)
List<string> values = new List<string>(list.Split(new char[] { ';', ' ' }, StringSplitOptions.RemoveEmptyEntries));
不需要明确的Trim()
。 LINQ也不是。如果其他空格可能存在,请将\t
,\r
,\n
添加到char []。