Lua string.format options

别等时光非礼了梦想. 提交于 2019-12-23 07:27:49

问题


This may seem like a stupid question, but what are the symbols used for string replacement in string.format? can someone point me to a simple example of how to use it?


回答1:


string.format in Lua follows the same patterns as Printf in c:

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

There are some exceptions, for those see here:

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




回答2:


Chapter 20 of PiL describes string.format near the end:

The function string.format is a powerful tool when formatting strings, typically for output. It returns a formatted version of its variable number of arguments following the description given by its first argument, the so-called format string. The format string has rules similar to those of the printf function of standard C: It is composed of regular text and directives, which control where and how each argument must be placed in the formatted string.

The Lua Reference says:

The format string follows the same rules as the printf family of standard C functions. The only differences are that the options/modifiers *, l, L, n, p, and h are not supported and that there is an extra option, q.

The function is implemented by str_format() in strlib.c which itself interprets the format string, but defers to the C library's implementation of sprintf() to actually format each field after determining what type of value is expected (string or number, essentially) to correspond to each field.




回答3:


There should be "Lua Quick Reference" html file in your hard disk, if you used an installation package.
(for example: ../Lua/5.1/docs/luarefv51.html)

There you'll find, among other things,

string.format (s [, args ])

  • Formatting directives
  • Formatting field types
  • Formatting flags
  • Formatting examples


来源:https://stackoverflow.com/questions/1811884/lua-string-format-options

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!