re = /(\d+\.([1-9]{3}|[1-9]{2}|[1-9]|0{1}))(\d*)/m
str = '#提取有效小数的思路:匹配出符合要求的组合不符合要求的组。
#使用sub函数,re.sub(pat,lambda m:m[1],s)
#repl使用函数,传递的参数是pat,所匹配的match对象,提取match对象中符合要求的组即可。
124.1230000012
124.1200003412
123.0000000012
1.2000
'
# Print the match result
str.scan(re) do |match|
puts match.to_s
end
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Ruby, please visit: http://ruby-doc.org/core-2.2.0/Regexp.html