拆分字符串并删除不带.select的空格

本文关键字:select 空格 删除 字符 字符串 串并 拆分 | 更新日期: 2023-09-27 18:09:15

(限制:系统;只有)

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

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

.ToArray也不能明显使用。

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

拆分字符串并删除不带.select的空格

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();
 }

它应该适用于所有情况:

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();