我有一个问题。我在使用货币的应用程序上工作,我想在let applcation中自动输入正确的货币符号来修剪整个字符串。首先,我将此代码剪掉:
let firstPriceTrimmed = firstPrice.components(separatedBy: "€").flatMap { String($0.trimmingCharacters(in: .whitespaces)) }.last
现在我的代码看起来像是:
switch sideIDS {
case 6, 8, 9, 10, 12:
var current = "€"
let firstPriceTrimmedNew = firstPriceTrimmed?.components(separatedBy: String(current)) { String($0.trimmingCharacters(in: .whitespaces)) }.first
case 7:
var current = "£"
let firstPriceTrimmedNew = firstPriceTrimmed?.components(separatedBy: String(current)) { String($0.trimmingCharacters(in: .whitespaces)) }.last
case 11:
var current = "₹"
let firstPriceTrimmedNew = firstPriceTrimmed?.components(separatedBy: String(current)) { String($0.trimmingCharacters(in: .whitespaces)) }.last
default:
XCTFail()
}
但它没有用。 XCode将消息“无法调用'组件'与参数列表类型'(separatedBy:String?,(_) - > _)'。怎么回事?我不明白XCode是什么意思......
答案 0 :(得分:1)
您尚未在.flapMap
components(separatedBy:)
的{{1}}内添加cases
或任何其他结果switch
。
let firstPriceTrimmedNew: String
switch sideIDS {
case 6, 8, 9, 10, 12:
let current = "€"
firstPriceTrimmedNew = firstPriceTrimmed?.components(separatedBy: current).flatMap { String($0.trimmingCharacters(in: .whitespaces)) }.first
case 7:
let current = "£"
firstPriceTrimmedNew = firstPriceTrimmed?.components(separatedBy: current).flatMap { String($0.trimmingCharacters(in: .whitespaces)) }.last
case 11:
let current = "₹"
firstPriceTrimmedNew = firstPriceTrimmed?.components(separatedBy: current).flatMap { String($0.trimmingCharacters(in: .whitespaces)) }.last
default:
XCTFail()
}