re = /(1[0-2]|[1-9])[\s\\\/\.-](3[0-1]|[1-2][0-9]|[1-9])/
str = 'Random Input
//
apples
100
10
Invalid Dates
1/0
1/1
1/9
1/10
1/19
1/20
1/29
1/30
1/31
1/32
Separators
10-10
10.10
10\\10
10/10
10a10
10%10
'
# 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