2016-03-23 16 views
0

私はconfigからUrlを作成するユーティリティメソッドを持っています。 configは、実行時に置き換えなければならないプレースホルダを持つURLを保持します。 %sでは文字列形式が正しく動作しないため、オブジェクトが使用可能なときにのみ文字列を構築できる遅延補間が考えられました。例えば迅速な文字列補間を遅らせる方法は?

私は、文字列がある場合:

var str = http://localhost/entitylist/\(obj.key2)/entity/\(obj.key1) 

を、私は私の補間値を与える必要がありますmethod1(str, obj)のような何かをしたいです。

私はstr.stringByReplacingOccurrencesOfStringでそれを達成することができます間違いなく、まだ私は%@がそれを行うための正しい方法で使用して、マーティンRでのコメントで述べたように、それを

+0

質問は不明です。実際の入力と希望する出力を提供してください。 – matt

+0

'var str =" http:// localhost/entitylist /%s/entity /%s " var output =文字列(形式:str、引数:[" foo "、" bar "])'出力は " http:// localhost/entitylist // entity/" –

+2

Swiftの文字列は'%@ 'を使用してください:http://stackoverflow.com/questions/27171178/how-to-use-string-object-in-the-string-フォーマットクラスメソッド。 –

答えて

1

を行うための任意のより良い方法があるかどうかを知りたいと思った

var str = "http://localhost/entitylist/%@/entity/%@" 

String(format: str, arguments: ["foo", "bar"]) 
1

フォーマット文字列を誤って使用しないでください。 URLを正しく形成するためのNSStringとNSURLと関連するメソッドがあります。