ios - 如何快速取出字符串的一部分

标签 ios string swift

我想取出我的字符串的一部分,后记我想把它保存在一个新的字符串中。

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/

相关文章:

ios - 如何在自定义 UIView 上显示 CGPoints

objective-c - 如何找到两个 NSString 的共同模式?

ios - 以编程方式在 stackView 中布置 subview

C 比较数组元素与字符串

swift - [NSView重新加载数据] : unrecognized selector sent to instance

ios - 如何通过 UITabBarController 将 indexPathForSelectedRow 传递到 UITabView?

ios - 如何检查整个应用程序中是否有任何 UIBackgroundTask 处于事件状态?

ios - 使用ios swift取消订阅附近的api后如何禁用蓝牙?

c - 如何为节点添加名称? (二叉树,C)

java - 在 Java 中使用字符串缓冲区进行字符串追加