4
A
回答
6
你可能分裂成片,碎片轉化爲Rationals,總結有理數,並將結果轉換爲浮動:
s = '1 1/2'
f = s.split.map { |r| Rational(r) }.inject(:+).to_f
# 1.5
如果您知道該字符串將始終有兩個部分,那麼你可以處理單獨的作品:
s = '1 1/2'
a = s.split
f = a.first.to_i + Rational(a.last).to_f
# 1.5
如果你不知道有多少零件會有(即'1'
,'3/2'
,'11 23/42'
,......都是可能的),那麼第一個應該適用於所有情況。
Kernel#Rational將引發ArgumentError如果它不能解析字符串,所以你可能要包住整個事情的begin
/except
塊處理錯誤。
0
s = '1 1/2'
w, e, d = s.strip.match(/\A(\d+)?\s*(?:(\d+)\/(\d+))?\z/).to_a.drop(1).map(&:to_f)
w + (e/d) # => 1.5
相關問題
- 1. 將混合分數字符串轉換爲浮點數PHP
- 2. 如何將浮點數轉換爲ruby中的數組?
- 3. 將混合列表轉換爲浮點數在python中
- 4. 如何將字符串數組的數組轉換爲Ruby中的浮點數?
- 5. 如何將nsnumber轉換爲浮點數
- 6. 如何將4位浮點數轉換爲2位浮點數
- 7. 將字符串轉換爲浮點數
- 8. 將字符串轉換爲浮點數
- 9. 將字符串轉換爲浮點數?
- 10. 將字符串轉換爲浮點數
- 11. 將字符串轉換爲浮點數
- 12. 將字符中的浮點數轉換爲浮點數(PYTHON)
- 13. Ruby:將字符串轉換爲浮點數
- 14. 如何將有符號字節數組轉換爲浮點數?
- 15. 如何將浮點數組轉換爲字節數組?
- 16. 將浮點數轉換爲int類型混合數據類型dictionairy
- 17. 如何將浮點字符串轉換爲數字?
- 18. 將混合分數轉換爲小數
- 19. MIPS將浮點數轉換爲整數
- 20. 將浮點數轉換爲整數
- 21. Java將浮點數轉換爲整數
- 22. 將浮點數轉換爲整數
- 23. iphone - 將浮點數轉換爲整數
- 24. 將C++浮點數轉換爲整數
- 25. 將分數轉換爲浮點數C#
- 26. 將數組datatime.datetime轉換爲浮點數
- 27. 將指數數字字符串轉換爲浮點數
- 28. 從數據幀列中拆分混合數字字符串並將其轉換爲浮點數
- 29. 如何將字符串轉換爲哈希值浮點數
- 30. 如何將字符串轉換爲ATS中的浮點數?