Страницы

Поиск по вопросам

пятница, 11 января 2019 г.

Взять из строки слова которые начинаются с большой буквы

Есть текст, из которого надо взять слова начинающиеся с большой буквы.
решИла нЕ Упрощать и зашифРОВАтЬ Все послаНИЕ дАже не Старайся нИЧЕГО у тЕбя нЕ получится с расшифРОВкой Сдавайся НЕ твоего ума Ты не споСОбЕн Но может быть если особенно упорно подойдешь к делу
будет Трудно конечнО Код ведЬ не из простых очень ХОРОШИЙ код то у тебя все получится и я буДу Писать тЕбЕ еще
чао
мой код
data.Split(' ').Select(x => x).Where(x=>char.IsUpper(x[0])).Reverse().ToList();
Почему то он не берет все слова которые начинаются с большой буквы. Мой результат
Писать ХОРОШИЙ Трудно Но Ты НЕ Старайся Все Упрощать
А должно получиться
Писать ХОРОШИЙ Код Трудно Но Ты НЕ Сдавайся Старайся Все Упрощать
Что в моем коде не так*


Ответ

Думаю, проблема в том, что вы делите по пробелу, а нужно включить в разделяющие символы ещё и конец строки (и Tab, наверное).
Ещё одна потенциальная проблема: Вы берёте первый символ слова, не проверив длину слова.
Ну и конструкция Select(x => x) не изменяет последовательность и таким образом не нужна.

Комментариев нет:

Отправить комментарий