Инструменты пользователя

Инструменты сайта


ru:autorun:documentation:strformat

StrFormat

StrFormat (<format>, [<param1> [, <param2> [, .. <paramN>]])
StrFormat <VAR> <specifier> [<param1> [ <param2> [ .. <paramN>]]

Возвращает отформатированную строку. Аналогична функции Format в Delphi или sprintf в C.

Параметры

formatСтрока формата. Может содержать спецификаторы, произвольный текст и эскейп-последовательности. Подробнее см. ниже.
param1..paramNОпционально. Параметры, значениями которых будут заменены спецификаторы в строке формата.

Спецификаторы

Спецификаторы начинаются с символа %, могут опционально содержать флаги, ширину и точность значения, и заканчиваются символом, определяющим тип спецификатора. Если необходимо ввести символ % в строке, его необходимо задвоить %%.

%[флаги][ширина][.точность]тип
%[-][0][width][.precision]d|u|f|x|X|s

Типы

dЦелое знаковое число.
uЦелое беззнаковое число.
fЧисло с плавающей точкой.
xШестнадцатеричное число (в нижнем регистре).
XШестнадцатеричное число (в верхнем регистре).
sСтрока.

Флаги

-Выравнивание по левому краю.
0Заполнение нулями вместо пробелов. При одновременном указании 0 и -, 0 игнорируется.

Ширина

Ширина определяет минимальную ширину строки. Если ширина значения параметра меньше этого значения, то недостающие символы будут заполнены пробелами (или нулями, в зависимости от флага).

Точность

Для типов d, u, x, X этот параметр не применяется, число не обрезается. Для типа f указывает число знаков после точки. Для типа s строка будет урезана до заданного значения.

Эскейп-последовательности

Поддерживаются следующие последовательности: \n (auLF), \r (auCR), \t (auTAB). Если нужно ввести «\», то его необходимо задвоить: «\\».

Возвращаемое значение

В случае успеха функция возвращает строку, в котором спецификаторы заменены соответствующими значениям параметров. При недостатке или отсутствии параметров, лишние спецификаторы будут заменены пустыми строками. Если число параметров больше числа спецификаторов, лишние параметры будут проигнорированы.

Примеры

StrFormat("Value=%d", 123) # --> "Value=123"
StrFormat("%f", 123.456789) # --> "123.456789"
StrFormat("%.2f", 123.456789) # --> "123.45"
StrFormat("%10.2f", 123.456789) # --> "     123.45"
StrFormat("%-10.2f", 123.456789) # --> "123.45     "
StrFormat("%X", 123456) # --> "1E240"
StrFormat("%08X", 123456) # --> "0001E240"
StrFormat("test %s", "testing") # --> "test testing"
StrFormat("%10.4s", "testing") # --> "      test"
StrFormat("text\ttext") # --> "text    text"
ru/autorun/documentation/strformat.txt · Последнее изменение: 2024/04/23 12:43 — loopback

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki