Ruby Programming/Reference/Objects/Regexp

From Wikibooks, open books for an open world
< Ruby Programming | Reference | Objects
Jump to: navigation, search

Contents

[edit] Regexp Regular Expressions

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.

[edit] oniguruma

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.

[edit] Simplifying regexes

Strategy: name them, then combine them.

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

[edit] Helper websites

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

[edit] Alternative Regular Expression Libraries

Some other wrappers exist:

PCRE Boost Regex

Personal tools
Namespaces
Variants
Actions
Navigation
Community
Toolbox
Sister projects
Print/export