re = /'\$([\d]*)[\.]?(\d+)'/im
str = '#Test-2019-8
#1.\'do+g\'
dog, doooog, abcdogef,
asdooooijk dooog asdoogghj
\'dog\', \'doooog\', \'abcdogef\'
#2. \'ab*d\'
ad, abd, abbbd
\'ad\', \'abd\', \'abbbbd\'
\'sad\', \'cabd\', \'abbbds\'
#3. \'[xy]{2}AB\'
\'xxAB\', \'xyAB\',\'yyAB\' \'2xxAB\'
#4. \'[a-z].?\'
\'aA\', \'b9\', \'z\' \'bX\'
\'aB z8 b6\'
#5. \'5[abc]?ef\'
\'5aef\', \'a5bef\', \'5ef\' \'5ef\'
#6. Taiwan ID : \'([A-Z])([12])(\\d{8})\',\'[A-Z][12]\\d{8}\'
\'A102926987\', \'B212345678\'
#7. mobile tel_num:\'(09)(\\d\\d)[-\\s](\\d{3})[-\\s](\\d{3})\'
\'0988 123 456\', \'0978-456-789\'
# : \'09\\d\\d[-\\s]\\d\\d\\d\'
\'0924-357\'
#8. Home tel_num:
# \'([\\(]?\\d\\d[\\)-]?)([\\d]{4})([-\\s]{1}[\\d]{4})\'
\'(02)2257 3150\', \'02-2250-3457\',\'(12)2245 3214\'
# \'[\\(]?(0[23])[\\)-]?(\\d{4})\'
\'(02)2345\', \'03-1348\'
#9. Date Time:yyyy/mm/dd
#\'(20[12]\\d)[-\\/]([1]?[\\d])[-\\/]([1-3][\\d])\'
\'2019/1/25\', \'2018-12-31\'
#\'(20[12]\\d)[-\\/]([01]\\d)[-\\/](\\d{2})\'
\'2019/01/15\' ,\'2020-11-28\'
#10. floating number: \'\\$([\\d]*)[\\.]?(\\d+)\'
\'$123.34\', \'$2345\' \'$0.234\' ,\'1.87\'
'
# 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