add string.padding

This commit is contained in:
Xertis 2025-02-09 14:06:23 +03:00
parent 0d32b1987c
commit c22f7e0eb5
2 changed files with 39 additions and 0 deletions

View File

@ -180,6 +180,24 @@ string.escape(str: string) -> string
Экранирует строку. Является псевдонимом `utf8.escape`. Экранирует строку. Является псевдонимом `utf8.escape`.
```lua
string.padding(str: string, size: number, [опционально] char: string) -> string
```
Добавляет **char** слева и справа от строки, пока её размер не будет равен **size**. По стандарту **char** равен символу пробела
```lua
string.left_padding(str: string, size: number, [опционально] char: string) -> string
```
Добавляет **char** слева от строки, пока её размер не будет равен **size**. По стандарту **char** равен символу пробела
```lua
string.right_padding(str: string, size: number, [опционально] char: string) -> string
```
Добавляет **char** справа от строки, пока её размер не будет равен **size**. По стандарту **char** равен символу пробела
## Расширения для math ## Расширения для math
```lua ```lua

View File

@ -292,6 +292,27 @@ function string.trim_left(s, char)
return string.match(s, "^" .. char .. "*(.+)$") or s return string.match(s, "^" .. char .. "*(.+)$") or s
end end
function string.padding(str, size, char)
char = char == nil and " " or char
local padding = math.floor((size - #str) / 2)
return string.rep(char, padding) .. str .. string.rep(char, padding)
end
function string.left_padding(str, size, char)
char = char == nil and " " or char
local left_padding = size - #str
return string.rep(char, left_padding) .. str
end
function string.right_padding(str, size, char)
char = char == nil and " " or char
local right_padding = size - #str
return str .. string.rep(char, right_padding)
end
string.lower = utf8.lower string.lower = utf8.lower
string.upper = utf8.upper string.upper = utf8.upper
string.escape = utf8.escape string.escape = utf8.escape