Пакет unicode в Go предоставляет такие функции, как unicode.IsDigit и unicode.IsUpper. Безопасно ли их использовать для проверки ввода формы, в частности, проверки пароля?
Как вы подойдете к проверке формы в Go без использования стороннего пакета? Из того, что я могу собрать, регулярное выражение стоит дорого, и его следует избегать, если это возможно, это жизнеспособное решение?
Вот пример использования пакета Unicode:



Я бы не сказал, что регулярное выражение стоит дорого, и его по возможности следует избегать. Это лучший инструмент для вашего случая. Хотя нет ничего плохого в использовании пакета Unicode для проверки пароля, другим программистам может быть удобнее просто использовать одно регулярное выражение, в котором вы можете записать все свои требования к паролям в одном регулярном выражении.
Эффективность регулярного выражения объявления: Вы можете прочитать о производительности реализации регулярного выражения golang здесь. Меня бы это не волновало, если вы не реализуете очень важный инструмент с высокой производительностью, где вы можете особенно измерить, что регулярное выражение замедляет вашу программу.
Ваш вопрос: «Какой подход я могу использовать, чтобы проверить, соблюдаются ли правила сложности пароля при смене пароля?» Код, который вы предлагаете в ссылке на игровую площадку, выглядит нормально.