我想取出我的字符串的一部分,后记我想把它保存在一个新的字符串中。
var key = "Optional("rFchd9DqwE")"
所以我的字符串现在等于 Optional("rFchd9DqwE")。现在我想从这个字符串中取出 rFchd9DqwE 部分并将其保存回变量“key”中。有没有简单的方法可以做到这一点?
最佳答案
如果你有这样的代码:
var aString: String? = "rFchd9DqwE"
let b = "\(aString)"
那么问题就出在你做错了。输出中的“Optional()”位告诉您您传入了可选类型而不是字符串类型。
你应该做的是这样的:
var aString: String? = "rFchd9DqwE"
if let requiredString = aString
{
let b = "\(requiredString)"
}
“if let”部分称为“可选绑定(bind)”。它将 aString 从可选对象转换为常规 String 对象,并将结果保存在新常量 requiredString 中。如果 aString 包含 nil,则跳过大括号内的代码。
另一种方法是使用 nil 合并运算符:
var aString: String? = "rFchd9DqwE"
let b = "\(aString ?? "")"
构造 aString ?? ""
如果不为 nil 则返回 aString 的字符串值,如果为 nil 则将其替换为 ??
之后的值。在这种情况下,它将 nil 替换为空白。
关于ios - 如何快速取出字符串的一部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30133463/