Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Swift中显示动态常量中的变量值?_Swift_Variables_Constants - Fatal编程技术网

如何在Swift中显示动态常量中的变量值?

如何在Swift中显示动态常量中的变量值?,swift,variables,constants,Swift,Variables,Constants,我知道我的问题标题令人困惑,但我会解释清楚。阅读完我的问题后,请建议一个好的标题,以便对其他人有所帮助 我有一个标签,其文本由API中的JSON确定 text_from_json = "My name is _ and my age is _" mylabel.text = text_from_json 在类中的两个常量中,我的年龄为“26”,名字为“杰克” let age = 26 let name = "jack" print("mylabel.text") //my output sh

我知道我的问题标题令人困惑,但我会解释清楚。阅读完我的问题后,请建议一个好的标题,以便对其他人有所帮助

我有一个标签,其文本由API中的JSON确定

text_from_json =  "My name is _ and my age is _"
mylabel.text = text_from_json
在类中的两个常量中,我的年龄为“26”,名字为“杰克”

let age = 26
let name = "jack"
print("mylabel.text")
//my output should be "My name is Jack and my age is 26"
我正在寻找类似于Python的Swift函数/方法:

text_from_json = "My name is {0} and my age is {1}"

print("My name is {0} and my age is {1}".format(name, age))

Swift中是否有类似于Python中的
.format
的函数?

Swift中的函数非常简单。您需要执行以下操作

    let name = "jacK"
    let age = 26
    //var formattedString = "My name is \(name) and ag is \(age)"
    var formattedString = String(format: "My name is %@ and age is %d", name,age)
对于您的具体情况,您可以这样做

let name = "jacK"
let age = 26
let stringFromJSON = "My name is _ and age is _"
var formattedString = stringFromJSON.replacingOccurrences(of: "_", with: "%@")
 formattedString = String(format: formattedString, name,"\(age)")
print(formattedString)

上述代码有效

我想你可能正在寻找字符串插值@davecom:不止这些--寻找iOS作为框架(如果有的话)的一部分提供的任何预定义函数来实现这一点..就像一个从json字符串、字符到搜索接受文本的函数,用另一个值替换字符并返回修改后的字符串,但当主字符串被分配给变量时,这不起作用。我已更新了答案。如果它对您不起作用,请分享您遇到的错误。您错过了问题。请看问题。字符串
“我的名字是…”
来自JSON,存储在一个变量中。这不是一个硬编码的字符串。@mohammaddadiq:谢谢你的帖子,但我想我可以把我的问题说得更具体一些。我将API1中的字符串值“我的名字是,我的年龄是”解析为JSON。我还有另一个API2,它的值是Jack和26。我需要合并这两个,这样它会生成输出“我的名字是杰克,我的年龄是26”--在:rmaddy:我有一个想法,但寻找解决这个问题的好方法,请建议…我可以将我的API1发送为“我的名字是{0},我的年龄是{1}”--将其存储在一个变量中--并查找{0}{1}字符串变量中的字符——并用名称和年龄变量替换它们。这类似于创建名为addVariablesToText(input1,input2)的字符串扩展名,实现是搜索字符串中的特定字符并替换它们。除此之外,我正在寻找更好的方法……我怀疑iOS会有一些函数/库已经实现了这一功能,我正在搜索它