gpt4 book ai didi

Swift 4 Cocoa 将格式化数据读取到变量中

转载 作者:行者123 更新时间:2023-11-30 12:00:56 24 4
gpt4 key购买 nike

我需要从字符串中读取一些格式化数据并将其存储在两个变量中。该字符串具有以下格式:

data = "(1234),(-567)"

数字的长度和符号各不相同。我感觉这个应该很简单。在 C 中这很容易:

scanf(data, "(%d),(%d)", num1, num2)

但是在 Swift 中,我正在绞尽脑汁地试图找到一种简单的方法来做到这一点。正如其他答案中所建议的,我已经尝试过:

data.components(separatedBy: CharacterSet.decimalDigits.inverted)

然而,这忽略了负号。非常感谢任何帮助!

最佳答案

您可以使用Scanner当您需要类似于 scanf 的行为时:

let data = "(1234),(-567)"

var num1: CInt = 0
var num2: CInt = 0
let scanner = Scanner(string: data)
if
scanner.scanString("(", into: nil),
scanner.scanInt32(&num1),
scanner.scanString("),(", into: nil),
scanner.scanInt32(&num2),
scanner.scanString(")", into: nil)
{
print(num1, num2)
} else {
print("failed")
}

关于Swift 4 Cocoa 将格式化数据读取到变量中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47244618/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com