私は過去に?の使用を見ましたか?これを行うための文字。しかし、実際に何が実際に呼び出されているのかわからないため、インターネット上で例を見つけることはできません。Rubyで位置置換を行うにはどうしたらいいですか?
"? ? ?" % ['A','B','C']
利回り:
"A B C"
は私がやろうとしているものです。
私は過去に?の使用を見ましたか?これを行うための文字。しかし、実際に何が実際に呼び出されているのかわからないため、インターネット上で例を見つけることはできません。Rubyで位置置換を行うにはどうしたらいいですか?
"? ? ?" % ['A','B','C']
利回り:
"A B C"
は私がやろうとしているものです。
疑問符だけでなく、書式指定子を使用する必要があります。
"%s %s %s" % ['A', 'B', 'C']
あなたの質問は明確ではありません。
> "%s %s %s" % ['A', 'B', 'C']
=> "A B C"
をあなたもポジションを台無しにしたい場合は、次のようなことを行うことができます:
>> "%3$s %1$s %2$s " % ['A', 'B', 'C']
=> "C A B "
あなただけの変数置換様
printf
を行いたい場合はデイブがお見せしたように、あなたはそれを行うことができます
か:
>> "%1$s %1$s %2$s %3$s" % ['A', 'B', 'C']
=> "A A B C"
あなたが最も可能性が高いのActiveRecordクエリの文脈にあった覚え?
の使用。これはRails特有ですが、Rubyではうまく動作しません。
ルビーでを['A', 'B', 'C']
から取得する最も良い方法はおそらく['A', 'B', 'C'].join ' '
です。しかし、一般的なケースでは、String#%
は他のものが記述しているように置換を行います(形式形式文字列を使用)。その方法についてのドキュメントを確認し、Kernel.sprintf
を確認してください。
実際には、Races固有のものだけでなく、SQLプレースホルダ(Railsだけでなく)には '?'がかなり標準的です。 Rubyではうまくいかないという事実は変わりません。 :) –