string.format (formatstring, ···)
Returns a formatted version of its variable number of arguments following the description given in its first argument (which must be a string). The format string follows the same rules as the ISO C function sprintf
. The only differences are that the options/modifiers *
, h
, L
, l
, n
, and p
are not supported and that there is an extra option, q
.
The q
option formats a string between double quotes, using escape sequences when necessary to ensure that it can safely be read back by the Lua interpreter. For instance, the call
string.format('%q', 'a string with "quotes" and \n new line')
may produce the string:
"a string with \"quotes\" and \ new line"
Options A
, a
, E
, e
, f
, G
, and g
all expect a number as argument. Options c
, d
, i
, o
, u
, X
, and x
expect an integer. When Lua is compiled with a C89 compiler, options A
and a
(hexadecimal floats) do not support any modifier (flags, width, length).
Option s
expects a string; if its argument is not a string, it is converted to one following the same rules of tostring
. If the option has any modifier (flags, width, length), the string argument should not contain embedded zeros.
Please login to continue.