ruby – 我如何知道BigDecimal是否无法解析?
发布时间:2020-12-16 21:09:34 所属栏目:百科 来源:网络整理
导读:我正在从csv导入数据,我需要将一些值转换为BigDecimal,如果无法解析则会引发错误. 从测试开始,BigDecimal(“无效数字”)返回一个0的BigDecimal.这没关系,但有点凌乱,除了有效值为0 … Float(“无效数字”)的行为不同并抛出异常…… 我目前的解决方案是: cla
我正在从csv导入数据,我需要将一些值转换为BigDecimal,如果无法解析则会引发错误.
从测试开始,BigDecimal(“无效数字”)返回一个0的BigDecimal.这没关系,但有点凌乱,除了有效值为0 … Float(“无效数字”)的行为不同并抛出异常…… 我目前的解决方案是: class String def to_bd begin Float(self) rescue raise "Unable to parse: #{self}" end BigDecimal(self) end end 我完全错过了什么吗? 解决方法
在简单的情况下,您可以使用RegExp
'123.4' =~ /^[+-]{0,1}d+.{0,1}d*$/ => 0 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |