c#split string并删除空字符串

时间:2017-09-28 10:47:57

标签: c#

我想在拆分操作中删除空字符串和空字符串:

 string number = "9811456789,   ";
 List<string> mobileNos = number.Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries).Select(mobile => mobile.Trim()).ToList();

我试过这个,但这不是删除空的空格条目

4 个答案:

答案 0 :(得分:4)

var mobileNos = number.Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries)
.Select(mobile => mobile.Trim()).Where(s => s != string.Empty).ToList();

var mobileNos = number.Replace(" ", "")
.Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries).ToList();

答案 1 :(得分:0)

据我所知,它对你有帮助;

string number = "9811456789, ";
List<string> mobileNos = number.Split(',').Where(x => !string.IsNullOrWhiteSpace(x)).ToList();

结果列表中只有一个元素为[0] =“9811456789”。

希望对你有所帮助。

答案 2 :(得分:0)

字符串扩展可以通过以下方式进行整洁 扩展名:

        public static IEnumerable<string> SplitAndTrim(this string value, params char[] separators)
        {
            Ensure.Argument.NotNull(value, "source");
            return value.Trim().Split(separators, StringSplitOptions.RemoveEmptyEntries).Select(s => s.Trim());
        }

然后您可以将其与以下任何字符串一起使用

 char[] separator = { ' ', '-' };
 var mobileNos = number.SplitAndTrim(separator);

答案 3 :(得分:-2)

"string,,,,string2".Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);

返回[“ string”],[“ string2”]