Ruby教程
Ruby控制语句
Ruby高级

Ruby 正则表达式

Ruby 正则表达式

正则表达式也拼写为 regexp,它包含一个正则表达式,用于将模式与字符串进行匹配。在 Ruby 中,模式写在正斜杠字符之间。它们描述字符串的内容。 Ruby 正则表达式更类似于 Perl 正则表达式。
语法:
/search string/
Ruby 1.9 使用 Oniguruma 正则表达式库,而 Ruby 2.0 使用 Onigmo 正则表达式库。 Onigmo 是 Oniguruma 的一个 fork 库,添加了一些新功能。

=∽ 和#match 运算符

通过使用=∽ 和#match 运算符来实现模式匹配。
=∽
这是基本的匹配模式。这里使用了两个操作数。一个是正​​则表达式,另一个是字符串。正则表达式与字符串匹配。
如果找到匹配项,运算符返回第一个匹配项的索引,否则返回 nil。
示例:
Ruby 正则表达式 1


#match

此运算符在匹配时返回一个 MatchData 对象,否则为 nil。
Ruby 正则表达式 2


元字符和转义符

元字符在模式中具有特定的含义。为了匹配一个字符串,它们被反斜线(\\\) 或转义。一些元字符是(,),(.),(?),(+),(-),(*), [,], {,}。
匹配时返回特定字符串
示例:
Ruby 正则表达式 3


字符类

元字符在模式中具有特定的含义。为了匹配一个字符串,它们被反斜线(\\\) 或转义。
一个字符类用方括号括起来。
[ab]
这里,[ab] 表示 a 或 b。它是/ab/的对立面,意思是 a 和 b。
示例:
Ruby 正则表达式 4

[ad]
这里,[ad] 相当于 [abcd] .连字符(-) 字符类表示字符范围。
示例:
Ruby 正则表达式 5

[^ad]
^ 符号代表任何其他不存在于
示例:
Ruby 正则表达式 6


重复

迄今为止定义的字符匹配单个字符。在重复元字符的帮助下,我们可以指定它们需要出现多少次。这些元字符称为量词。
*: 零次或多次 +: 一次或多次 ?: 零次或一次(可选) {n}: 正好 n 次 {n, }: n 次或多次 {,m}: m 次或更少次 {n,m}: 至少 n 次,最多 m 次
示例:
Ruby 正则表达式 7


分组

分组使用括号将术语分组在一起。将术语组合在一起使它们合而为一。
示例:
Ruby 正则表达式 8

在这个例子中,第一个模式匹配一​​个元音后跟两个字符。
在第二个模式中,它匹配一个元音后跟一个单词字符,两次。
(?:...)
此表达式提供分组而不捕获。它结合术语而不创建反向引用。
示例:
《Ruby

昵称: 邮箱:
Copyright © 2022 立地货 All Rights Reserved.
备案号:京ICP备14037608号-4