2016-07-20 2 views
-1

1 AYAN PAL 40 Мужской КНФ S7-49 (LB), КНФ S7-49 (LB)печати первое слово последней строки в строку C#

2 D Pradhan 26 Мужской КНФ S7-52 (LB), КНФ S7-52 (LB)

3 КРИСТИНА РАДОСТЬ 34 Женского КНФ S4, 5 (МБ) КНФ S4, 5 (МБ)

4 J ЧАРЛЬЗ Dannie 34 Мужчина КНФ S4, 6 (УБ) КНФ S4, 6 (УБ)

5 ANUDEEP 27 Мужской CNF S9 9 (LB) CNF S9 9 (LB)

6 SAI Кумар 25 Male CNF S9 12 (LB) CNF S9 12 (LB)

Я это data в string и я хочу, чтобы напечатать первое слово последней строки на LABEL и данных является dynamic

+0

содержит ли строка какие разделители? –

+0

Разделите текст по разделительной строке (обычно «\ n»), тогда последним элементом разделенного массива будет последняя строка. Просто снова расколотесь на "". – Rumpelstinsk

+0

NO string не содержит разделителей –

ответ

3

Сочетание Split и FirstOrDefault должны сделать трюк:

var lastWordOfLastLine = multiLineData.Split(new string[] { Environment.NewLine }, StringSplitOptions.RemoveEmptyEntries) 
             .LastOrDefault().Split(' ').FirstOrDefault(); 

Для того, чтобы разбить его вниз:

string lastLine = multiLineData.Split(
      new string[] { Environment.NewLine }, StringSplitOptions.RemoveEmptyEntries) 
           .LastOrDefault(); 

string lastWord = lastLine == null ? null : lastLine.Split(' ').FirstOrDefault(); 

Я предпочитаю второй метод, как он обрабатывает нулевые значения а, не бросать NullReferenceExpception

+0

@ неуспешно исправлено. – user3185569

+0

Прохладный рад помочь вам –

+1

Nice и ясное решение. Просто добавьте - если он должен обрабатывать различные типы разрывов строк, используйте 'new string [] {" \ r \ n "," \ n "}', как указано [здесь] (http://stackoverflow.com/questions/1547476/easyiest-to-split-a-string-on-newlines-in-net) –

Смежные вопросы