Как сделать первую букву заглавной 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("вася") ); // Вася
Изменение регистра в .NET
Если вы пишете приложение, которое принимает входные данные от пользователя, вы никогда не сможете определить, в каком случае (верхний или нижний) он будет использовать для ввода данных. Часто требуется обеспечить согласованность регистра строк, особенно если они отображаются в пользовательском интерфейсе. В таблице ниже описаны три метода изменения регистра. Для первых двух методов имеются перегруженные варианты, учитывающие язык и региональные параметры.
| Имя метода | Использовать |
|---|---|
| String.ToUpper | Преобразует все символы в строке в верхний регистр. |
| String.ToLower | Преобразует все символы в строке в нижний регистр. |
| TextInfo.ToTitleCase | Преобразует первые символы всех слов в строке в заглавные. |
Методы String.ToUpper и String.ToLower не следует использовать для преобразования строк для их сравнения или проверки на равенство. Дополнительные сведения см. в разделе Сравнение строк смешанного регистра .
Сравнение строк смешанного регистра
Чтобы сравнить строки, содержащие символы в разных регистрах, для их упорядочения, вызовите одну из перегрузок метода String.CompareTo с параметром comparisonType и укажите значение StringComparison.CurrentCultureIgnoreCase, StringComparison.InvariantCultureIgnoreCase или StringComparison.OrdinalIgnoreCase для аргумента comparisonType . Для сравнения с использованием определенного языка, отличного от текущего языка и региональных параметров, вызовите перегрузку метода String.CompareTo с параметрами culture и options и укажите значение CompareOptions.IgnoreCase для аргумента options .
Чтобы сравнить строки смешанного регистра, чтобы определить, равны ли они, вызовите одну из перегрузок String.Equals метода с параметром comparisonType и укажите значение StringComparison.CurrentCultureIgnoreCase, StringComparison.InvariantCultureIgnoreCaseили StringComparison.OrdinalIgnoreCase для аргумента comparisonType .
Метод ToUpper
Метод String.ToUpper преобразует все символы в строке в верхний регистр. В примере ниже смешанный регистр строки «Hello World!» изменяется на верхний.
string properString = "Hello World!"; Console.WriteLine(properString.ToUpper()); // This example displays the following output: // HELLO WORLD!
Dim MyString As String = "Hello World!" Console.WriteLine(MyString.ToUpper()) ' This example displays the following output: ' HELLO WORLD!
В предыдущем примере по умолчанию учитываются язык и региональные параметры. В нем применяются соглашения об использовании регистров, действующие для текущих языка и региональных параметров. Чтобы выполнить изменение регистра без учета языка и региональных параметров или применить соглашения о регистре определенного языка и региональных параметров, используйте перегрузку String.ToUpper(CultureInfo) метода и укажите значение CultureInfo.InvariantCulture или System.Globalization.CultureInfo объект , представляющий указанный язык и региональные culture параметры в параметре . Пример использования метода для изменения регистра ToUpper без учета языка и региональных параметров см. в разделе Изменение регистра без учета языка и региональных параметров.
Метод ToLower
Метод String.ToLower аналогичен предыдущему методу, однако преобразует все символы в строке в нижний регистр. В примере ниже регистр строки «Hello World!» изменяется на нижний.
string properString = "Hello World!"; Console.WriteLine(properString.ToLower()); // This example displays the following output: // hello world!
Dim MyString As String = "Hello World!" Console.WriteLine(MyString.ToLower()) ' This example displays the following output: ' hello world!
В предыдущем примере по умолчанию учитываются язык и региональные параметры. В нем применяются соглашения об использовании регистров, действующие для текущих языка и региональных параметров. Чтобы выполнить изменение регистра без учета языка и региональных параметров или применить соглашения о регистре определенного языка и региональных параметров, используйте перегрузку String.ToLower(CultureInfo) метода и укажите значение CultureInfo.InvariantCulture или System.Globalization.CultureInfo объект , представляющий указанный язык и региональные culture параметры в параметре . Пример использования метода для изменения регистра ToLower(CultureInfo) без учета языка и региональных параметров см. в разделе Изменение регистра без учета языка и региональных параметров.
Метод ToTitleCase
Метод TextInfo.ToTitleCase преобразует первый символ каждого слова в верхний регистр, а остальные символы — в нижний. Однако слова, состоящие только из прописных букв, считаются сокращениями и не преобразуются.
Метод TextInfo.ToTitleCase учитывает регистр, то есть он использует соглашения об использовании регистров, действующие для определенного языка и региональных параметров. Чтобы вызвать этот метод, сначала нужно получить объект TextInfo, представляющий соглашения об использовании регистров, из свойства CultureInfo.TextInfo конкретного языка и региональных параметров.
В примере ниже каждая строка из массива передается в метод TextInfo.ToTitleCase. Среди строк есть как строки заголовков, так и сокращения. Строки преобразуются в последовательности слов, начинающихся с заглавных букв, согласно соглашениям об использовании регистров для языка и региональных параметров «Английский (США)».
using System; using System.Globalization; public class Example < public static void Main() < string[] values = < "a tale of two cities", "gROWL to the rescue", "inside the US government", "sports and MLB baseball", "The Return of Sherlock Holmes", "UNICEF and children">; TextInfo ti = CultureInfo.CurrentCulture.TextInfo; foreach (var value in values) Console.WriteLine(" --> ", value, ti.ToTitleCase(value)); > > // The example displays the following output: // a tale of two cities --> A Tale Of Two Cities // gROWL to the rescue --> Growl To The Rescue // inside the US government --> Inside The US Government // sports and MLB baseball --> Sports And MLB Baseball // The Return of Sherlock Holmes --> The Return Of Sherlock Holmes // UNICEF and children --> UNICEF And Children
Imports System.Globalization Module Example Public Sub Main() Dim values() As String = Dim ti As TextInfo = CultureInfo.CurrentCulture.TextInfo For Each value In values Console.WriteLine(" --> ", value, ti.ToTitleCase(value)) Next End Sub End Module ' The example displays the following output: ' a tale of two cities --> A Tale Of Two Cities ' gROWL to the rescue --> Growl To The Rescue ' inside the US government --> Inside The US Government ' sports and MLB baseball --> Sports And MLB Baseball ' The Return of Sherlock Holmes --> The Return Of Sherlock Holmes ' UNICEF and children --> UNICEF And Children
Обратите внимание на то, что хотя метод TextInfo.ToTitleCase и учитывает язык и региональные параметры, он не обеспечивает лингвистическую правильность использования прописных и строчных букв. Например, в предыдущем примере метод преобразует строку «a tale of two cities» в «A Tale Of Two Cities». При этом лингвистически правильным для языка и региональных параметров en-US будет преобразование «A Tale of Two Cities».
См. также
- Базовые операции со строками в .NET Framework
- Выполнение строковых операций, не зависящих от языка и региональных параметров
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, на русском языке и даже почти без ошибок машинного перевода.
Как сделать первую букву заглавной css
В CSS нет свойства, которая делает первую букву заглавной. Но можно выбрать первый символ текста через псевдоэлемент :first-letter, и применить к нему свойство text-transform: uppercase. Псевдоэлемент :first-letter работает только с блочными элементами (не будет работать например со ). Чтобы :first-letter работало со строчными элементами, данному элементу надо задать свойство «inline-block» или «block».
p::first-letter text-transform: uppercase; >