私は、これがあればと自明であることを理解しますが、オプションは次のように、そこにある%Sか、%s全く文字列としてゼロを補間することを?
例:
(format "%?.el" nil) ; ".el"
(format "%?.el" "beginner") ; "beginner.el"
はい、文字列の補間が適切な用語です。テンプレートを使用して文字列が生成される、引用/マクロの件名のバリエーションです。
—
wvxvw 2015年
いい質問ですね。
—
2015年
formatこのためのインジケーターのリクエストを検討してください(そのために使用しますM-x report-emacs-bug)。私たちの残りはconcatこれに慣れており、時にはformat(他の変換のために)組み合わせて使用しています。または、インジケータに対応するformatなどのに引数を渡します。(if something "foobar" "")format"%s"
これは正規表現を作成するかなり疑わしい方法のように聞こえます(おそらく
—
phils 2015年
rx、このようなシナリオでマクロを使用することを検討してください。最低限regexp-quote、適切に実行していることを確認してください)。常に次のようなことをし(apply 'format "%s%s%s%s" (mapcar (lambda (x) (or x "")) LIST))ます。もちろん、フォーマット文字列が文字通りである場合"%s%s%s"、concat実際にはもっと理にかなっています。
interpolationタグをリクエストします。