/
zkuzmine
/
SheduleHelperFront
Обзор
Документация
Войти
/
zkuzmine
/
SheduleHelperFront
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
src/utils/formatName.js
18 строк
818 B
zkuzmine-dot
Name abbreviate
17 июн 2026, 17:16
17 июн 2026, 17:16
01a1da9
Код
Авторство
О чём код?
// "Кузьмин Евгений Вячеславович" -> "Кузьмин Е.В." // Сохраняет хвост в скобках, если он есть: "Иванов Иван Иванович (староста)" -> "Иванов И.И. (староста)" export function abbreviateName(fullName) { if (!fullName) return fullName; const match = fullName.match(/^(.+?)(\s*\([^)]*\))?$/); const namePart = (match?.[1] || fullName).trim(); const suffix = match?.[2] || ''; const parts = namePart.split(/\s+/).filter(Boolean); if (parts.length < 2 || parts.length > 3) return fullName; const [last, first, middle] = parts; let abbreviated = `${last} ${first.charAt(0).toUpperCase()}.`; if (middle) abbreviated += `${middle.charAt(0).toUpperCase()}.`; return `${abbreviated}${suffix}`; }