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

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


ru:tcmediainfo:documentation:script_strformat

StrFormat

Функция форматирует переданные значения согласно форматной строке.

StrFormat(format [, value1 [, value2 .. [, valueN]]])
formatФорматная строка. Может содержать спецификаторы и произвольный текст.
value1..NСписок значений.

В общем случае формат спецификатора следующий:

"%" [index ":"] ["-"] [width] ["." prec] type

Спецификатор начинается с символа %. За ним следуют:

  • необязательный параметр [index ":"], задающий индекс аргумента;
  • необязательный параметр ["-"], задающий выравнивание по левому краю;
  • необязательный параметр [width], задающий минимальную длину результирующей строки;
  • необязательный параметр ["." prec], задающий точность;
  • символ преобразования типа — type.

Список символов преобразования типов:

dДесятичный формат. Аргумент должен иметь целочисленное значение, которое будет преобразовано в строку символов десятичных цифр. Если строка форматирования содержит спецификатор точности prec, то результирующая строка должна содержать, как минимум, указанное в спецификаторе количество цифр. Если аргумент содержит меньшее количество цифр, то в результирующую строку перед значением числа будут добавлены нули.
uДесятичный беззнаковый формат. Форматируется аналогично параметру d, но знак числа не выводится.
eНаучный формат. Аргумент должен представлять собой число с плавающей запятой. Значение будет преобразовано в строку формата «-d.ddd…E+ddd». Результирующая строка начинается со знака минус, если значение аргумента отрицательно. Десятичной точке всегда предшествует одна цифра. Общее количество цифр, включая стоящую перед десятичной точкой, задается спецификатором точности. Если спецификатор точности отсутствует, то используется значение по умолчанию — 15 цифр. После символа экспоненты всегда стоит знак плюс или минус и, как минимум, трехразрядное число.
fФиксированный формат. Аргумент должен быть числом с фиксированной десятичной точкой. Значение аргумента будет преобразовано в строку формата «-ddd.ddd…». Результирующая строка начинается со знака минус, если аргумент отрицателен. Количество десятичных знаков после разделителя определяется спецификатором точности prec. Если спецификатор точности отсутствует, то после десятичной точки выводятся заданные по умолчанию 2 десятичных знака.
gОбщий формат. Аргумент должен быть числом с плавающей запятой. Значение аргумента преобразовывается по возможности в наиболее короткую строку, используя фиксированный или научный формат. Количество значащих цифр в результирующей строке задается спецификатором точности prec. При отсутствии данного параметра выводится по умолчанию 15 знаков. Нули в конце строки не выводятся. Десятичный разделитель ставится только в случае необходимости. Фиксированный формат используется, если количество значащих цифр до десятичной точки меньше или равно значению указанному в спецификаторе точности, и если значение аргумента больше или равно 0.00001. В других случаях в результирующей строке используется научный формат.
nЧисловой формат. Аргумент должен быть числом с плавающей запятой. Результирующая строка имеет вид «-d,ddd,ddd.ddd…». Данный формат аналогичен фиксированному формату. Отличие состоит в том, что результирующая строка включает в себя разделители тысяч.
sСтроковый формат. Длина результирующей строки задается спецификатором точности prec. Если длина исходной строки превышает значение спецификатора точности, то она усекается.
xШестнадцатеричный формат. Аргумент должен иметь целочисленное значение. Значение аргумента преобразовывается в строку шестнадцатеричных чисел. Спецификатор точности prec задает минимальное количество символов результирующей строки. Если исходное значение содержит меньшее количество цифр, то в начало результирующей строки будут проставлены недостающие нули.

Примечания

В целях совместимости функция имеет псевдоним Format.

ru/tcmediainfo/documentation/script_strformat.txt · Последние изменения: 2019/08/19 23:37 (внешнее изменение)

Инструменты страницы