これはばかげた質問のように思えるかもしれませんが、string.formatの文字列置換に使用される記号は何ですか?誰かがそれを使用する方法の簡単な例を私に指摘できますか?
4 に答える
Luaのstring.formatは、cのPrintfと同じパターンに従います。
http://www.cplusplus.com/reference/clibrary/cstdio/printf/
ここを参照してください、いくつかの例外があります:
PiL の第 20 章でstring.format
は、最後の方で次のように説明されています。
この関数
string.format
は、通常は出力用に文字列をフォーマットする際の強力なツールです。最初の引数、いわゆるフォーマット文字列で指定された説明に従って、可変数の引数のフォーマットされたバージョンを返します。フォーマット文字列には、標準 C の関数と同様のルールがありますprintf
。これは、フォーマットされた文字列のどこにどのように各引数を配置する必要があるかを制御する、通常のテキストとディレクティブで構成されています。
Lua リファレンスには次のように書かれています。
printf
フォーマット文字列は、標準 C 関数のファミリと同じ規則に従います。唯一の違いは、オプション/修飾子*
、l
、L
、n
、p
およびh
がサポートされていないことと、追加のオプションq
.
この関数はstr_format()
、strlib.c
それ自体がフォーマット文字列を解釈するによって実装されますが、sprintf()
各フィールドに対応することが期待される値のタイプ (本質的には文字列または数値) を決定した後、各フィールドを実際にフォーマットする C ライブラリの実装に従います。
インストールパッケージを使用した場合、ハードディスクに「Lua Quick Reference」html ファイルがあるはずです。
(例: ../Lua/5.1/docs/luarefv51.html)
そこには、とりわけ、
string.format (s [, args ])
- フォーマット ディレクティブ
- フィールド タイプの書式設定
- フラグの書式設定
- フォーマットの例