我有"8 560,90 cur."
。如何将整数8560
作为整数?
我可以用逗号分割它,然后将[0]
作为整数,询问是否有更多方法可以执行此操作。
答案 0 :(得分:1)
"8 560,90 cur.".scan(/(\d*?).+?(\d+,\d\d)/).flatten.join.to_i
# => 8560
"sdwfdsf560,90 cur.".scan(/(\d*?).+?(\d+,\d\d)/).flatten.join.to_i
# => 560
答案 1 :(得分:1)
我是这样做的:
str = "8 560,90 cur."
str.gsub(/[^\d,]/, '').to_i
# => 8560
这将删除不是数字或逗号的每个字符,产生"8560,90"
,然后在其上调用to_i
,这会产生8560
。只要您希望第一个逗号之前的每个数字都成为数字的一部分,并且之后没有数字,这将适用于任何字符串。