generated from VLADIMIR/template_frontend
update formats
This commit is contained in:
@@ -149,3 +149,39 @@ export function timeAgo(goDateStr: string): string {
|
||||
});
|
||||
}
|
||||
|
||||
export function formatTime(timeStr: string): string {
|
||||
if (!timeStr) {
|
||||
return "";
|
||||
}
|
||||
|
||||
return timeStr
|
||||
// 1. Убираем абсолютно все пробелы (включая табы и неразрывные пробелы)
|
||||
.replace(/\s+/g, "")
|
||||
// 2. Заменяем все точки на двоеточия
|
||||
.replace(/\./g, ":");
|
||||
}
|
||||
|
||||
export function formatTimeRange(text: string): string {
|
||||
if (!text) {
|
||||
return "";
|
||||
}
|
||||
|
||||
return text
|
||||
// 1. Меняем точку на двоеточие ТОЛЬКО в форматах времени (например, 16.00 -> 16:00)
|
||||
// (^|[^\d]) - проверяем, что перед цифрой нет других цифр
|
||||
// ([0-2]?\d) - часы (от 0 до 29)
|
||||
// \. - сама точка
|
||||
// ([0-5]\d) - минуты (от 00 до 59)
|
||||
// (?!\d) - после минут не должно быть других цифр
|
||||
.replace(/(^|[^\d])([0-2]?\d)\.([0-5]\d)(?!\d)/g, "$1$2:$3")
|
||||
|
||||
// 2. Находим любые дефисы или тире и делаем красивые пробелы вокруг них ("-" -> " - ")
|
||||
.replace(/\s*([-–—])\s*/g, " - ")
|
||||
|
||||
// 3. На всякий случай сжимаем двойные пробелы в один (если они случайно появились)
|
||||
.replace(/\s{2,}/g, " ")
|
||||
|
||||
// 4. Убираем пробелы в самом начале и в самом конце строки
|
||||
.trim();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user