跳转至内容

Ruby 编程/参考/对象/Regexp

来自维基教科书,开放的书籍,开放的世界

Regexp 正则表达式

[编辑 | 编辑源代码]

Regexp 类包含一个正则表达式,用于匹配字符串模式。

正则表达式可以使用 /your_regex_here/ 创建,也可以使用构造函数 "new" 创建。

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

或者使用带有常量的 new 构造函数,例如

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

要查看所有可用的创建选项,请查看 regex rdoc

oniguruma

[编辑 | 编辑源代码]

从 1.9 开始,ruby 有了一个新的正则表达式引擎 (oniguruma),它速度更快,功能更强大,并且支持编码感知/友好。要查看其工作原理的详细说明,请查看其 rdoc

简化正则表达式

[编辑 | 编辑源代码]

策略:命名它们,然后组合它们。

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

辅助网站

[编辑 | 编辑源代码]

"rubular":http://rubular.com 允许您在线测试您的正则表达式

其他正则表达式库

[编辑 | 编辑源代码]

其他一些包装器存在

PCRE Boost Regex

华夏公益教科书