0
private String result = String.format("$1#%1$s","myString")
Swift 4で同等の結果を得るにはどうすればよいですか?Androidのフォーマットされた文字列をSwiftに変換する
private String result = String.format("$1#%1$s","myString")
Swift 4で同等の結果を得るにはどうすればよいですか?Androidのフォーマットされた文字列をSwiftに変換する
String(format:_:)
を使用し、%1$s
の代わりに%@
を参照として使用してください。
let myString = "test"
let result = String(format: "$1#%@", myString) //$1#test
文字列フォーマット指定子in the Cocoa documentationについては、こちらをご覧ください。
ココア文字列形式では、位置指定子を使用できます。 '%1 $ @'を使ってもうまくいきました。単一の価値だけではありませんが、それは必要ではありません。この答えは、必要な変更は 's'の代わりに' @'を使うことだけです。しかしそれは100%真実ではありません。 's'はC-文字列、' @'はオブジェクトを表します。 '%s'はSwiftとObjective-Cを使ってCocoaのフォーマッタで動作しますが、' String'(または 'NSString')を文字列の適切なメソッドを使ってC文字列に変換するだけです。 – rmaddy