Обработка строк регистрации пользователей

GolangBeginner
Практиковаться сейчас

Введение

В рамках данного испытания участникам предстоит реализовать функцию для форматирования имен пользователей в системе регистрации социальной платформы. Основная цель — обеспечить единообразие и чистоту вводимых данных для поддержания целостности базы данных и улучшения пользовательского опыта. В частности, функция должна удалять лишние пробелы в начале и конце строки, преобразовывать первую букву каждого сегмента имени в верхний регистр и корректно обрабатывать составные имена (имя, отчество, фамилия).

Обработка строк регистрации пользователей

В системе регистрации пользователей социальной платформы поддержание чистоты и единообразия вводимых данных критически важно для корректной работы системы и удобства пользователей.

Задачи

  • Создайте функцию formatUserName, которая принимает полное имя в качестве входного параметра.
  • Удалите начальные и конечные пробелы из входной строки.
  • Преобразуйте первую букву каждого сегмента имени в заглавную.
  • Верните отформатированное полное имя.

Требования

  • Реализуйте решение в файле ~/project/registration.go.
  • Используйте функции Go для работы со строками, изученные в предыдущей лабораторной работе.
  • Функция должна корректно обрабатывать несколько сегментов имени (имя, второе имя, фамилия).
  • Используйте strings.TrimSpace() для удаления лишних пробелов.
  • Убедитесь, что функция корректно работает с различными форматами ввода.

Примеры

Для проверки функции обновите функцию main(), добавив в нее тестовые случаи:

func main() {
    fmt.Println(formatUserName("  john doe  "))        // Вывод: John Doe
    fmt.Println(formatUserName("  alice bob smith  ")) // Вывод: Alice Bob Smith
    fmt.Println(formatUserName("JANE DOE"))            // Вывод: Jane Doe
}

Запустите программу и убедитесь, что вывод соответствует ожидаемым результатам.

go run registration.go
John Doe
Alice Bob Smith
Jane Doe

Подсказки

  1. strings.TrimSpace() удаляет пробелы в начале и в конце введенного имени.
  2. strings.Fields() разбивает имя на отдельные сегменты, автоматически обрабатывая множественные пробелы между словами.
  3. strings.ToLower() позволяет привести строку к нижнему регистру перед применением Title(), чтобы обеспечить единообразие.
  4. strings.Join() собирает сегменты имени обратно в одну строку, разделяя их одиночным пробелом.
✨ Проверить решение и практиковаться

Резюме

Подводя итог, в данном испытании требовалось реализовать функцию для форматирования имен пользователей в системе регистрации. Функция успешно справляется с удалением лишних пробелов, приведением сегментов имени к правильному регистру и обработкой составных имен. Это решение гарантирует чистоту и единообразие данных, что является важным аспектом разработки надежных пользовательских интерфейсов и систем хранения данных.