re = /[ ]*([+-]?[ ]*(([1-9][0-9]*)[ ]*(\\*[ ]*x[ ]*(\\^[ ]*([-+]?[1-9][0-9]*))?)?)|([ ]*[-+]?[ ]*x[ ]*(\\^[ ]*([-+]?[1-9][0-9]*))?)[ ]*)/m
str = '判断多项式是不是合法
题目文档:
https://images.ptausercontent.com/2746fa4c-db55-4a55-beb9-459cea89b99d.pdf
1-2*x^-2+5*x^12-4*x+12
'
# 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