gpt4 book ai didi

ruby - 将 ruby​​ decimal 格式化为不带前导零的字符串 (".123")

转载 作者:数据小太阳 更新时间:2023-10-29 08:35:53 25 4
gpt4 key购买 nike

我想要类似 .725 的字符串。现在,我使用 %.3f,但它将前导零显示为 0.725。总之,我有一个 float ,当它有一个前导零(例如 0.125)时,当我将它转换为字符串时,我希望删除前导零。结果:.125

谢谢!

编辑:

更多例子:

0.725  -> ".725"
1.5 -> "1.500"
0.125 -> ".125"
2.456 -> "2.456"

可能的解决方案:

我取字符串中的第一个字符,如果它是零,我只是将它设置为一个空字符。

def remove_leading_zero string
string[0] = "" if string[0] == "0"
string
end

最佳答案

解决方案

你可以使用:

format('%.3f', value).sub(/^0/, '')

如果第一个字符是 0 后跟一个点,它会删除它。

测试

values = [
0.725,
1.5,
0.125,
2.4567,
0,
10
]

values.each do |value|
p format('%.3f', value).sub(/^0/, '')
end

#=>
# ".725"
# "1.500"
# ".125"
# "2.457"
# ".000"
# "10.000"

关于ruby - 将 ruby​​ decimal 格式化为不带前导零的字符串 (".123"),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41477004/

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