7

测试代码:

string files = "C:\Hello; C:\Hi; D:\Goodmorning; D:\Goodafternoon; E:\Goodevening";
string[] paths = files.Split(';');

foreach (string s in paths)
{
    MessageBox.Show(s);
}

如何在将空格存储到数组之前删除空格?

4

5 回答 5

14

您可以使用String.Trim方法,如下所示:

foreach (string s in paths)
{
    MessageBox.Show(s.Trim());
}

或者,您可以在输入之前消除空格paths,如下所示:

files.Split(new[]{';', ' '}, StringSplitOptions.RemoveEmptyEntries);
于 2012-09-04T02:21:26.837 回答
8

.NET 2.0

string[] paths = Array.ConvertAll(files.Split(';'), a => a.Trim());

.NET 3.5

string[] paths = files.Split(';').Select(a => a.Trim()).ToArray();
于 2012-09-04T02:22:00.623 回答
1

没关系,我解决了。。

我的代码:

string files = "C:\Hello; C:\Hi; D:\Goodmorning; D:\Goodafternoon; E:\Goodevening";
string[] paths = files.Trim().Split(';');
List<string> cleanPath = new List<string>();

 int x = 0;
 foreach (string s in paths)
 {
     cleanPath.Add(s.Trim());
 }

 foreach(string viewList in cleanPath)
 {
      x++;
      MessageBox.Show(x + ".)" +viewList);//I put x.) just to know whether it still has whitespace characters.
 }
于 2012-09-04T02:25:36.483 回答
0

怎么样:

string[] paths = Regex.Split(files, @";\W+");

当然,您在 RegEx 中也有一些额外的灵活性。

于 2012-09-04T02:28:28.717 回答
-3

你可以使用这个 PHP 函数: $var = str_replace(" ", "", $var);

于 2012-09-04T02:22:06.433 回答