gpt4 book ai didi

ios - 用 TextField 中的小数分隔符替换逗号

转载 作者:可可西里 更新时间:2023-11-01 02:00:33 28 4
gpt4 key购买 nike

有人能告诉我如何在我的文本字段中用 . 替换 , 分隔符吗?用户可以输入类似 5,6 的内容,但是当他按下按钮时,我想将他输入的数据作为 5,6 提交到 5.6 因为否则不会进行小数计算。

我有这个扩展字符串文件,但似乎只适用于限制文本中的一个逗号和逗号后的两位小数,而不是将 , 转换为

extension String {

private static let decimalFormatter:NumberFormatter = {
let formatter = NumberFormatter()
formatter.allowsFloats = true
return formatter
}()

private var decimalSeparator:String{
return String.decimalFormatter.decimalSeparator ?? "."
}


func isValidDecimal(maximumFractionDigits:Int)->Bool{

guard self.isEmpty == false else {
return true
}

// Check if valid decimal
if let _ = String.decimalFormatter.number(from: self){

// Get fraction digits part using separator
let numberComponents = self.components(separatedBy: decimalSeparator)
let fractionDigits = numberComponents.count == 2 ? numberComponents.last ?? "" : ""
return fractionDigits.characters.count <= maximumFractionDigits
}

return false
}

var doubleValue: Double {
let nf = NumberFormatter()
nf.decimalSeparator = "."
if let result = nf.number(from: self) {
return result.doubleValue
} else {
nf.decimalSeparator = ","
if let result = nf.number(from: self) {
return result.doubleValue
}
}
return 0
}
}

最佳答案

当你点击按钮时,在下面写下代码来替换你的字符串

let strReplace = txtField.text.replacingOccurrences(of: ",", with: ".", options: .literal, range: nil)// change "txtField" your textfield's object
print(\(strReplace))

关于ios - 用 TextField 中的小数分隔符替换逗号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46741749/

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