.NET 2.0 - токенизация текста через пробел - PullRequest
1 голос
/ 04 декабря 2008

Предположим, у вас есть такой вывод:

Word1           Word2   Word3      Word4

Где количество пробелов между словами произвольно. Я хочу разбить его на массив слов.

Я использовал следующий код:

string[] tokens =
         new List<String>(input.Split(' '))
             .FindAll
             (
                 delegate(string token)
                 {
                      return token != String.Empty;
                 }
             ).ToArray();

Не совсем эффективно, но хорошо выполняет свою работу.

Как бы вы это сделали?

Ответы [ 2 ]

18 голосов
/ 04 декабря 2008

Он уже упоминает string.Split (). Чего ему не хватает, так это StringSplitOptions.RemoveEmptyEntries:

string[] tokens = input.Split(new char[] { ' ' },
    StringSplitOptions.RemoveEmptyEntries); 
1 голос
/ 04 декабря 2008

Я бы использовал регулярное выражение для разбиения с "\ w +" для шаблона.

...