首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >值替换后恢复字符串插值

值替换后恢复字符串插值
EN

Stack Overflow用户
提问于 2019-06-14 02:47:49
回答 1查看 68关注 0票数 1

给定一个字符串:"My name is Gustavo",它是用"My name is \(foo.name)"创建的

是否可以在值被替换后获得字符串"My name is \(foo.name)"

换句话说,有没有可能在拥有"My name is Gustavo"的情况下找到"My name is \(foo.name)"

编辑:如果我可以访问"My name is ",也就是。来自动态构建的所有字符串的硬编码字符串,这将是一个解决方案。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-06-14 03:03:11

不,这不可能。事实上,"My name is \(foo.name)"甚至没有包含在编译后的代码中。相反,Swift-5编译器生成的代码等同于:

代码语言:javascript
复制
let str = String(stringInterpolation: {
    var temp = String.StringInterpolation(literalCapacity: 11, interpolationCount: 1)
    temp.appendLiteral("My name is ")
    temp.appendInterpolation(foo.name)
    return temp
}())

This article包含有关如何在Swift-4和Swift-5中实现字符串插值的详细信息。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56586857

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档