Треки
/
C#
C#
/
Вправи
/
Бездоганно чисто
Бездоганно чисто

Бездоганно чисто

Навчальна вправа

Вступ

Символи

Тип char у C# - це 16-бітна величина, що представляє найменші адресовані компоненти тексту. Кілька char можуть утворювати рядок тексту (англ. string), як-от "word", або char можна обробляти окремо. Їхні літерали записують в одинарних лапках, наприклад 'A'.

Символи char у C# підтримують кодування UTF-16 Unicode, тож, крім латинського набору символів, можна представити майже всі системи письма, які використовуються у світі, наприклад грецьку літеру 'β'.

Існує багато вбудованих методів бібліотеки для перевірки та обробки char. Їх можна знайти як статичні методи класу System.Char.

Побудова рядків

char іноді використовують разом з обʼєктом StringBuilder. Цей обʼєкт має методи, які дозволяють будувати рядок тексту символ за символом і змінювати його. Наприкінці процесу в нього можна викликати ToString, щоб вивести повний рядок тексту.

Вказівки

У цій вправі ми реалізуємо частину набору допоміжних процедур, які допомагають розробнику чистити назви ідентифікаторів. У 5 завданнях ми поступово побудуємо процедуру Clean. Правильний ідентифікатор складається з нуля або більше літер і символів підкреслення. У всіх випадках вхідний рядок тексту (англ. string) гарантовано не є null. Якщо у функцію Clean передати порожній рядок тексту, вона має повернути порожній рядок тексту. Зауважмо, що не варто викликати процедуру Clean з порожнім ідентифікатором, бо такі ідентифікатори нічого не дають.

1. Замініть усі пробіли на символи підкреслення

Реалізуйте (статичний) метод Identifier.Clean(), щоб замінити всі пробіли на символи підкреслення. Це стосується також пробілів на початку й у кінці рядка.

Identifier.Clean("my   Id");
// => "my___Id"

2. Замініть керуючі символи на рядок тексту «CTRL» у верхньому регістрі

Змініть (статичний) метод Identifier.Clean(), щоб замінити керуючі символи на рядок тексту "CTRL" у верхньому регістрі.

Identifier.Clean("my\0Id");
// => "myCTRLId",

3. Перетворіть kebab-case на camelCase

Змініть (статичний) метод Identifier.Clean(), щоб перетворювати kebab-case на camelCase.

Identifier.Clean("à-ḃç");
// => "àḂç"

4. Пропустіть символи, які не є літерами

Змініть (статичний) метод Identifier.Clean(), щоб він пропускав будь-які символи, які не є літерами.

Identifier.Clean("1😀2😀3😀");
// => ""

5. Пропустіть грецькі літери в нижньому регістрі

Змініть (статичний) метод Identifier.Clean(), щоб пропускати грецькі літери в діапазоні від 'α' до 'ω'.

Identifier.Clean("MyΟβιεγτFinder");
// => "MyΟFinder"
Редагувати через GitHub Посилання відкривається в новому вікні або вкладці
C# Exercism

Час розпочати Бездоганно чисто?

Зареєструйтеся на Exercism, щоб вивчати й опановувати C#, а також 62 концепції178 вправ та справжнє наставництво від людей, і все це безкоштовно.