从 Swift 中的字符串中提取双精度值

Extract Double Value from String in Swift

我正在使用 location 访问我的应用程序中的当前温度。我得到了 weather 温度,但我只需要 double 值。

let weatherTemp = "41.7°C"

要求的是:

weatherTemp = 41.7

我该怎么做?我用过:

extension Double {
    static func parse(from string: String) -> Double? {
        return Double(string.components(separatedBy: CharacterSet.decimalDigits.inverted).joined())
    }
}

这将打印所有数字,但不打印小数点。我也需要小数。

在“°”上拆分字符串并将第一部分转换为 Double

if let tempString = weatherTemp.split(separator: "°").first, let temp = Double(tempString) {
    print(temp)
}