拆除逗号分隔的字符串,同时删除空格和空条目

Sam*_*eer 19 c# linq arrays lambda

我想将逗号分隔的字符串转换为字符串数组,并删除空格和空条目.例如,给定输入:

string valueString = "sam, mike,   , ,john  , Tom and jerry  , ";
Run Code Online (Sandbox Code Playgroud)

预期结果将是以下值(当然,修剪):

sam
mike
john
Tom and Jerry
Run Code Online (Sandbox Code Playgroud)

我尝试了以下修改值的代码行,但是这无法删除"空"条目:

valueString.Split(',').Select(sValue => sValue.Trim()).ToArray();
Run Code Online (Sandbox Code Playgroud)

什么是最好的方法来修剪输入和清理和清空可能导致过程的条目?

Ant*_*ony 47

使用Trim with StringSplitOptions.RemoveEmptyEntries不起作用,因为" "它不被视为空条目.您需要进行正常拆分,然后修剪每个项目,然后过滤掉空字符串.

valueString.Split(',')
    .Select(x => x.Trim())
    .Where(x => !string.IsNullOrWhiteSpace(x))
    .ToArray();
Run Code Online (Sandbox Code Playgroud)