1

(限制:系统;仅限)

我希望能够将一个字符串拆分为一个数组并删除空格,我目前有这个:

string[] split = converText.Split(',').Select(p => p.Trim()).ToArray();

编辑: .ToArray 显然也不能使用。

但问题是,我不能使用除核心系统方法之外的任何东西。那么如何在不使用 .select 或其他非核心方式的情况下从拆分或数组中修剪空间。

谢谢!

4

2 回答 2

9
string[] split = 
  convertText.Split(new[]{',',' '}, StringSplitOptions.RemoveEmptyEntries);

通过在您的拆分标准中添加一个空格,当您拥有 RemoveEmptyEntries 时,它将摆脱它们。但是,如果条目中有空格,这将失败。在这种情况下,您可以:-

string[] split = 
      convertText.Split(new[]{','}, StringSplitOptions.RemoveEmptyEntries);

 for (int index = 0; index < split.Count; index++)
 {
     split[index] = split[index].Trim();
 }
于 2013-04-16T04:19:29.613 回答
0

它应该适用于所有情况:

public static class TrimHelper
{
    public static string[] SplitAndTrim(this string str, char splitChar, StringSplitOptions options = StringSplitOptions.RemoveEmptyEntries)
    {
        List<string> result = new List<string>();

        if (str != null)
        {
            foreach (var item in str.Split(splitChar, options))
            {
                string val = item.Trim();

                if (options == StringSplitOptions.RemoveEmptyEntries && val == string.Empty)
                    continue;

                result.Add(val);
            }
        }

        return result.ToArray();
    }
}

用法:

string[] split = "text, ".SplitAndTrim(',').ToArray();
于 2018-02-01T14:26:28.100 回答