This commit is contained in:
2026-08-21 00:09:32 +07:00
parent 7656100fe6
commit a2cadf6eca
20 changed files with 320 additions and 94 deletions
@@ -0,0 +1,7 @@
package string_tools
// IStringTools — утилиты работы со строками.
type IStringTools interface {
// Transliterate выполняет транслитерацию русского текста в латиницу.
Transliterate(text string) string
}
@@ -44,9 +44,16 @@ var (
)
)
type stringTools struct{}
// NewStringTools создаёт реализацию IStringTools.
func NewStringTools() IStringTools {
return &stringTools{}
}
// Transliterate выполняет транслитерацию русского текста в латиницу,
// заменяет пробелы на _, удаляет все остальные символы, кроме цифр (знаки препинания и т.д.)
func Transliterate(text string) string {
func (s *stringTools) Transliterate(text string) string {
// Приводим к нижнему регистру и транслитерируем
result := replacer.Replace(strings.ToLower(text))