2014-02-05 4 views
0

У меня есть следующие коды:извлечь первые три слова в строке из

 void dbSvc_retrievepopularhawkerCompleted(object sender, RouteServiceRef.retrievepopularhawkerCompletedEventArgs e) 
    { 
     List<RouteServiceRef.Hawker> recommendPlaceList; 
     recommendPlaceList = e.Result.Cast<RouteServiceRef.Hawker>().ToList(); 

     string hawkername = ""; 
     string address = ""; 
     string postal = ""; 
     double coordX = 0.0; 
     double coordY = 0.0; 
     double popularity = 0; 



     foreach (RouteServiceRef.Hawker rp in recommendPlaceList) 
     { 
      hawkername = rp.hawkername; 
      address = rp.address; 
      postal = rp.postal; 
      coordX = rp.xcoord; 
      coordY = rp.ycoord; 
      popularity = rp.popularity; 

      cities.Add(new City() { Name = hawkername, Population = popularity }); 



     } 


     ColumnSeries bs = ChartControl.Series[0] as ColumnSeries; bs.ItemsSource = cities; 



    } 

Как извлечь первые три слова в строке в hawkername? Результат для hawkername является:

enter image description here

Мне нужно, чтобы получить первые три строки из.

+0

вам нужны первые три слова в каждой строке Do , или первые три элемента в коллекции? – jonnep

ответ

2
var firstThreeWords = hawkername.Split(' ').Take(3); 

Не забудьте включить using System.Linq; если вы не используете его:

+0

Take возвращает IEnumerable. Если вы хотите снова использовать его как строку, используйте: 'string.Join (" ", hawkername.Split ('') .Take (3));' – ElGauchooo

1

Что-то, как это будет делать:

var input = "ldsk bkfd badk klsfdl"; 
var result = string.Join(" ", input.Split(' ').Take(3)); 
Console.WriteLine(result); 
Смежные вопросы