Lua string.параметр форматирования

Это может показаться глупым вопросом, но каковы символы, используемые для замены строки в строке.формат? может ли кто-нибудь указать мне на простой пример того, как его использовать?

3 ответов


строку.формат в Lua следует тем же шаблонам, что и Printf в c:

http://www.cplusplus.com/reference/clibrary/cstdio/printf/

есть некоторые исключения, для тех, смотрите здесь:

http://pgl.yoyo.org/luai/i/string.format


Глава 20 PiL описание string.format в конце:

функции string.format - Это мощный инструмент при форматировании строк, как правило, для вывода. Он возвращает форматированная версия переменной its количество аргументов после описание, данное его первым аргумент, так называемая строка формата. Строка формата имеет правила, аналогичные те printf функции стандарт C: он состоит из регулярных текст и директивы, которые контролируют где и каким должен быть каждый аргумент помещается в форматированную строку.

на Ссылка Lua говорит:

строка формата следует за тем же правила как printf семейный стандарт C функции. Единственные отличия что параметры / модификаторы *, l, L, n, p и h не поддерживаются и что существует дополнительная опция, q.

функция реализована с помощью str_format() на strlib.c который сам интерпретирует строку формата, но ссылается на реализацию библиотеки C sprintf() фактически форматировать каждое поле после определения того, какой тип значения ожидается (строка или число, по существу), чтобы соответствовать каждому полю.


на вашем жестком диске должен быть html-файл "Lua Quick Reference", если вы использовали установочный пакет.
(например. :./ Lua/5.1/docs / luarefv51.html)

там вы найдете, среди прочего,

string.format (s [, args ])

  • директивы форматирования
  • типы полей форматирования
  • флаги форматирования
  • примеры форматирования