问题描述
我有一个始终会转换为this之类的字符串,在该字符串中,用户输入数字并始终以小数点开头,
所以我有0.01-> 0.10-> 1.00
但是我不想要那样的东西,我只想转换用户输入的内容
这是我现有的将100000转换为1,000.00的代码
func convertme(string: String) -> String{
var number: NSNumber!
let formatter = NumberFormatter()
formatter.numberStyle = .currencyAccounting
formatter.currencySymbol = ""
formatter.maximumFractionDigits = 2
formatter.minimumFractionDigits = 2
var amountWithPrefix = string
// remove from String: "$",".",","
let regex = try! NSRegularExpression(pattern: "[^0-9]",options: .caseInsensitive)
amountWithPrefix = regex.stringByReplacingMatches(in: amountWithPrefix,options: NSRegularExpression.MatchingOptions(rawValue: 0),range: NSMakeRange(0,string.count),withTemplate: "")
print("amountWithPrefix",amountWithPrefix)
let double = (amountWithPrefix as NSString).doubleValue
number = NSNumber(value: (double / 100))
// if first number is 0 or all numbers were deleted
guard number != 0 as NSNumber else {
return ""
}
return formatter.string(from: number)!
}
预期结果:
我想设置字符串格式的数字而不添加其他数据,我想将(100000.变成100,000。)(100000.0变成100,000.0
我希望将我的100000转换为100,000,并且如果用户也输入了十进制,则只能有一个十进制,因此当用户输入100000.00时,它将转换为100,000.00。
PS。我那里有一个正则表达式,只接受数字但不接受小数,如何使它也接受小数?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)