Last modified on 9 July 2010, at 17:57

Ruby Programming/Reference/Objects/Regexp

Regexp Regular ExpressionsEdit

Class Regexp holds a regular expression, used to match a pattern of strings.

Regular expressions can be created using /your_regex_here/ or by using the constructor "new".

>> /a regex/
>> /a case insensitive regex/i

or use the new constructor with constants, like

>> Regexp.new('a regex')
>> Regexp.new('a regex', MULTILINE)

To see all available creation options, please see the regex rdoc.

onigurumaEdit

Starting with 1.9, ruby has a new Regular Expression engine (oniguruma), which is slightly faster and more powerful, as well as encoding aware/friendly. To see a good explanation of how it works, please see its rdoc.

Simplifying regexesEdit

Strategy: name them, then combine them.

float = /[\d]+\.[\d]+/
complex = /[+-]#{float}\.#{float}/

Helper websitesEdit

"rubular":http://rubular.com lets you test your regexps online

Alternative Regular Expression LibrariesEdit

Some other wrappers exist:

PCRE Boost Regex