string.format (formatstring, ···)

最初の引数 (ストリングでなければならない) で指定された記述に従い、可変個の引数をフォーマット設定して返します。フォーマット・ストリングは、 標準 C 関数の printf ファミリーと同じ規則に従います。唯一の違いは、 オプションの修飾子 *lLnp、および h はサポートされず、追加のオプション q があることです。q オプションは、Lua インタープリターで安全に読み戻せる適切な形式にストリングをフォーマット設定します。そのストリングは二重引用符の間に書かれ、 ストリングの中のすべての二重引用符、改行、埋め込みゼロ、およびバックスラッシュは結果の書き出し時に正しくエスケープされます。例えば、呼び出し

     string.format('%q', 'a string with "quotes" and \n new line')

は、次のストリングを生成します。

     "a string with \"quotes\" and \
      new line"

オプション cdEefgGiouX、および x は、すべて数値の引数を期待し、qs はストリングを期待します。

この関数は、q オプションに対する引数として以外、組み込みゼロを含むストリング値は受け入れません。