opções String.format Lua
-
06-07-2019 - |
Pergunta
Isto pode parecer uma pergunta estúpida, mas quais são os símbolos usados ??para substituição de string em string.format? Pode alguém me aponte para um exemplo simples de como usá-lo?
Solução
string.format em Lua segue os mesmos padrões como Printf em c:
http://www.cplusplus.com/reference/clibrary/cstdio/printf /
Há algumas exceções, para os ver aqui:
Outras dicas
capítulo 20 do PIL descreve string.format
perto do fim:
A função
string.format
é um poderosa ferramenta ao formatar cordas, tipicamente, para a saída. Ele retorna um versão formatada de sua variável número de argumentos seguindo o descrição dada por seu primeiro argumento, a chamada cadeia de formato. A cadeia de formato tem regras semelhantes aos aqueles da função deprintf
padrão C: Ela é composta de regulares texto e directivas, que o controle onde e como cada argumento deve ser colocado na string formatada.
O Lua Referência diz:
A cadeia de formato segue o mesmo governa como a família
printf
de padrão funções C. As únicas diferenças são que as opções / modificadores*
,l
,L
,n
,p
eh
não são suportados e que existe uma opção extra,q
.
A função é implementada por str_format()
em strlib.c
que se interpreta a cadeia de formato, mas adia a implementação da biblioteca C de sprintf()
de realmente formatar cada campo depois de determinar o que é esperado tipo de valor (string ou número, essencialmente) para corresponder a cada campo.
Não deve haver "Lua de Referência Rápida" arquivo html em seu disco rígido, se você usou um pacote de instalação.
(Por exemplo: ../ Lua / 5.1 / docs / luarefv51.html)
Lá você encontrará, entre outras coisas,
string.format (s [, args ])
- A formatação directivas
- A formatação de tipos de campo
- A formatação bandeiras
- A formatação exemplos