method
extract_float

Ruby latest stable (v2_5_5)
-
0 notes -
Class: Scanf::FormatSpecifier
- 1_8_6_287 (0)
- 1_8_7_72 (0)
- 1_8_7_330 (0)
- 1_9_1_378 (0)
- 1_9_2_180 (0)
- 1_9_3_125
- 1_9_3_392
- 2_1_10
- 2_2_9
- 2_4_6
- 2_5_5
- 2_6_3
- What's this?
extract_float(s)
private
Hide source
# File lib/scanf.rb, line 312 def extract_float(s) return nil unless s &&! skip if /\A(?<sign>[-+]?)0[xX](?<frac>\.\h+|\h+(?:\.\h*)?)[pP](?<exp>[-+]\d+)/ =~ s f1, f2 = frac.split('.') f = f1.hex if f2 len = f2.length if len > 0 f += f2.hex / (16.0 ** len) end end (sign == -- ? -1 : 1) * Math.ldexp(f, exp.to_i) else s.to_f end end