Как сделать первую букву заглавной c
Мы хотим сделать этот проект с открытым исходным кодом доступным для людей во всем мире. Пожалуйста, помогите нам перевести это руководство на другие языки.
Светлая тема Тёмная тема
Поделиться
Сделать первый символ заглавным
важность: 5
Напишите функцию ucFirst(str) , возвращающую строку str с заглавным первым символом. Например:
ucFirst("вася") == "Вася";
Мы не можем просто заменить первый символ, так как строки в JavaScript неизменяемы.
Но можно пересоздать строку на основе существующей, с заглавным первым символом:
let newStr = str[0].toUpperCase() + str.slice(1);
Однако есть небольшая проблемка. Если строка пуста, str[0] вернёт undefined , а у undefined нет метода toUpperCase() , поэтому мы получим ошибку.
- Использовать str.charAt(0) , поскольку этот метод всегда возвращает строку (для пустой строки — пустую).
- Добавить проверку на пустую строку.
Вот второй вариант:
function ucFirst(str) < if (!str) return str; return str[0].toUpperCase() + str.slice(1); >alert( ucFirst("вася") ); // Вася
Сделать первую букву строки заглавной
Всем привет!
Как в предложении все слова подогнать под один формат?
Т.е. если я ввожу «ИВАНОВ ИВАН ИВАНОВИЧ» или «ИВАнов ИваН ивановИЧ» и т.п выводилось потом в любом случае «Иванов Иван Иванович».
Так я первую букву первого слова делаю заглавную, но второе и третье остается маленьким.
1 2 3 4
public static string FirstUpper(string str) { return str.Substring(0, 1).ToUpper() + (str.Length > 1 ? str.Substring(1) : ""); }
Думаю как вариант надо искать в строке каждый пробел и делать ToUpper и ToLower в куске строки до него, но код весьма громоздкий получится. Может есть какая то встроенная функция или алгоритм оптимальнее?
Благодарю.
Лучшие ответы ( 1 )
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:
Сделать первую букву заглавной
Возникла такая проблема. у меня есть список List<string> содержащий какие-то слова, и мне нужно.

Сделать первую букву слова заглавной
у меня есть адрес примерно такого вида "222567, ололошная обл., ололошный р-н, г.ололо.
Обработка слов: поставить точку и сделать букву заглавной
Доброго времени суток! Столкнулся с такой проблемой. Не могу прописать программу. Смысл понял, а.
Из текстового файла прочитать предложение, первую букву каждого слова сделать большой
Из текстового файла прочитать предложение, первую букву каждого слова сделать большой. Полученое.
543 / 544 / 181
Регистрация: 16.03.2012
Сообщений: 1,160
Записей в блоге: 2

Сообщение было отмечено Памирыч как решение
Решение
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
public static string FirstUpper(string str) { string[] s = str.Split(' '); for (int i = 0; i s.Length; i++) { if (s[i].Length > 1) s[i] = s[i].Substring(0, 1).ToUpper() + s[i].Substring(1, s[i].Length - 1).ToLower(); else s[i] = s[i].ToUpper(); } return string.Join(" ", s); } static void Main(string[] args) { Console.WriteLine(FirstUpper("sE lgf;fOPPEKFP SERT")); }
Запуск — Ctrl+F5
![]()
17433 / 12825 / 3361
Регистрация: 17.09.2011
Сообщений: 21,106
1 2 3 4 5 6 7 8 9 10
unsafe void NormalizeString(string str) { fixed (char* pBase = str) { char prev = '\0'; for (char* ptr = pBase; ptr pBase + str.Length; prev = *ptr++) if (char.IsLetter(*ptr)) *ptr = char.IsLetter(prev) ? char.ToLower(*ptr) : char.ToUpper(*ptr); } }
Под понятие «слово» уже подгоните сами. В коде выше слова разделяются любой не-буквой.
543 / 544 / 181
Регистрация: 16.03.2012
Сообщений: 1,160
Записей в блоге: 2
Либо еще так (в цикле):
s[i]=s[i].ToLower(); s[i] = s[i].Substring(0, 1).ToUpper() + s[i].Substring(1, s[i].Length - 1);
Регистрация: 29.10.2012
Сообщений: 68
Я написал так:
1 2 3 4 5 6 7 8 9 10 11 12
public String FirstUpper(String str) /*Один символ после пробела Заглавный*/ { str = str.ToLower(); string[] s = str.Split(' '); for (int i = 0; i s.Length; i++) { if (s[i].Length > 1) s[i] = s[i].Substring(0, 1).ToUpper() + s[i].Substring(1, s[i].Length - 1); else s[i] = s[i].ToUpper(); } return string.Join(" ", s); }
Регистрация: 27.07.2010
Сообщений: 496
Всем привет. Меня интересует самый первый вариант, если я правильно понял, то этот код
1 2 3 4
public static string FirstUpper(string str) { return str.Substring(0, 1).ToUpper() + (str.Length > 1 ? str.Substring(1) : ""); }
делает все буквы маленькими а первую в строке заглавную.
У меня есть вот такая штука как мне это все дело прикрутить к этому, что бы все буквы были меленькими а первая маленькая в строке?
187 / 100 / 19
Регистрация: 15.09.2011
Сообщений: 801
Вот вариант с регулярками
Кликните здесь для просмотра всего текста
1 2 3 4 5 6 7 8 9 10 11
public string Capitalize(string input) { var result = new StringBuilder(input.ToLower()); foreach (Match m in Regex.Matches(input, @"\b(?!\s)[а-я,a-z]", RegexOptions.IgnoreCase)) { result = result.Replace(m.Value.ToLower(), m.Value.ToUpper(), m.Index, 1); } return result.ToString(); }
PS. Жаль, что не выбрали лучшим вариант kolorotur: по моему, он самый быстрый
c# сделать первую букву заглавной
Добавьте код который уже есть. Сделать не сложно но нужно понимать как у вас хранится XML, как вы из него извлекаете элементы и на основе каких (надеюсь стандартных) классов вы с ним работаете. Без этого ответить на ваш вопрос можно только так, как я уже ответил.
1 мар 2016 в 21:42
2 ответа 2
Сортировка: Сброс на вариант по умолчанию
Для XDocument и приведенного примера можно например так:
XDocument doc = XDocument.Load(@"SomeFile.xml"); IEnumerable elements = from el in doc.Descendants("ttt") select el; foreach (XElement el in elements) < StringBuilder elementText = new StringBuilder(el.Element("t2").Value); if (Char.IsLower(elementText[0])) < elementText[0] = Char.ToUpper(elementText[0]); >el.Element("t2").Value = elementText.ToString(); elementText.Clear(); > doc.Save(@"SomeFile.xml");
Больше подробностей и возможностей описано в MSDN, на русском языке и даже почти без ошибок машинного перевода.
C++ для приматов

Начальный курс программирования для студентов направления «Прикладная математика» Одесского национального университета имени И.И.Мечникова
Meet Your Teachers
dr.Mazurok
Software developer AI Scientist Ass.prof Odessa National I.I.Mechnikov University
Личные Ссылки
- http://igor.mazurok.com
- http://cpp.mazurok.com
- http://java.mazurok.com
Проверенные Сервисы
Jane Platonova
Недавние решения
- e-olymp 396. Дождь 24/11/2021
- OCPC2021 K: Нобелевская премия 13/11/2021
- OCPC2021 J: Театр теней 13/11/2021
- OCPC2021: I Белка в колесе 13/11/2021
- OCPC2021 H: Счастья всем даром! 13/11/2021
Tag Archives: заглавная буква
e-olymp 8320. Заглавная строка
Условие
Обычная задача обработки текстов — преобразовать первую букву каждого слова в строке в заглавную. Задана строка, содержащая слова из прописных букв, разделенных одним или несколькими пробелами. Выведите идентичную ей строку, за исключением того что первую букву каждого слова следует сделать заглавной.
Входные данные
Строка из слов, состоящих из прописных букв $’a’$ — $’z’$, разделенных одним или несколькими пробелами. Длина строки не более $50$ символов.
Выходные данные
Выведите строку, идентичную входной, в которой первая буква каждого слова преобразована в заглавную.
Тесты
| № | Входные данные | Выходные данные |
| 1 | introduction to algorithms | Introduction To Algorithms |
| 2 | more than one space between words | More Than One Space Between Words |
| 3 | hello world | Hello World |
| 4 | string or c string | String Or C String |
Решение
Для решения данной задачи необходимо, во-первых, прочитать строку. Используем для этого в первом решении getline ( cin , s ) ; и cin . getline ( s , 51 ) ; во втором, так как есть необходимость читать несколько пробелов. Далее делаем первый символ заглавным с помощью toupper ( s [ 0 ] ) , а затем проверяем все остальные символы, начиная с третьего и делаем первые символы в каждом слове заглавными с помощью упомянутой функции. В конце выводим строку.
