C#:
Зробити першу літеру рядка великою
Як це зробити:
C# пропонує простий підхід до перетворення рядків з великої літери за допомогою вбудованих методів. Найпростіший спосіб досягнення цього - змінити рядок безпосередньо за допомогою цих методів. Для більш складних або специфічних правил капіталізації (наприклад, написання кожного слова з великої літери) можуть знадобитися додаткові бібліотеки або ручні методи. Нижче наведено приклади, які демонструють, як з великої літери перетворити рядок в C# різними способами.
Базова капіталізація:
Щоб написати з великої літери першу букву одного слова або речення:
string originalString = "hello world";
string capitalizedString = char.ToUpper(originalString[0]) + originalString.Substring(1);
Console.WriteLine(capitalizedString); // Вивід: "Hello world"
Написання кожного слова з великої літери:
Для написання з великої літери першої літери кожного слова в рядку, можна скористатися методом TextInfo.ToTitleCase
, який знаходиться в просторі імен System.Globalization
:
using System;
using System.Globalization;
string originalString = "hello world";
TextInfo textInfo = CultureInfo.CurrentCulture.TextInfo;
string capitalizedString = textInfo.ToTitleCase(originalString);
Console.WriteLine(capitalizedString); // Вивід: "Hello World"
Примітка: ToTitleCase
не змінює на маленькі букви решту літер; він лише перетворює на велику букву першу літеру кожного слова. Крім того, деякі слова за правилами написання заголовків (наприклад, “and”, “or”, “of”) можуть не бути написані з великої літери в залежності від налаштувань культури.
Використання методів розширення для можливості повторного використання:
Ви можете створити метод розширення для класу string
, щоб спростити процес капіталізації, роблячи ваш код чистішим і більш повторно використовуваним. Ось як створити і використовувати такий метод:
using System;
public static class StringExtensions
{
public static string Capitalize(this string input)
{
if (string.IsNullOrEmpty(input))
{
return input;
}
return char.ToUpper(input[0]) + input.Substring(1);
}
}
class Program
{
static void Main(string[] args)
{
string originalString = "hello world";
string capitalizedString = originalString.Capitalize();
Console.WriteLine(capitalizedString); // Вивід: "Hello world"
}
}
Цей метод розширення Capitalize
можна викликати для будь-якого об’єкта рядка в межах простору імен, пропонуючи більш інтуїтивний та об’єктно-орієнтований підхід до маніпуляції з рядками в C#.
Сторонні бібліотеки:
Поки стандартна бібліотека C# задовольняє більшість потреб у капіталізації рядків, певні спеціалізовані завдання можуть скористатися від сторонніх бібліотек, таких як Humanizer. Однак для завдання простого перетворення рядків або кожного слова в рядку з великої літери, стандартні методи C# є адекватними та ефективними, усуваючи потребу в зовнішніх залежностях.