Ruby正则表达式 #

一、创建正则表达式 #

ruby
/ruby/
%r{ruby}
Regexp.new("ruby")
Regexp.compile("ruby")

二、匹配方法 #

2.1 基本匹配 #

ruby
"hello ruby" =~ /ruby/
"hello ruby".match(/ruby/)
"hello ruby".match?(/ruby/)
/ruby/ =~ "hello ruby"
/ruby/ === "hello ruby"

2.2 捕获组 #

ruby
match = "hello ruby".match(/(\w+) (\w+)/)
match[0]
match[1]
match[2]
match.captures

三、常用模式 #

ruby
/\d/
/\w/
/\s/
/\D/
/\W/
/\S/
/^start/
/end$/
/\Astart/
/end\z/
/a.b/
/a.*b/
/a.+b/
/a.?b/
/a|b/
/[abc]/
/[^abc]/
/[a-z]/
/(abc)/
/(?:abc)/

四、选项 #

ruby
/ruby/i
/ruby/m
/ruby/x
/ruby/imx

五、替换 #

ruby
"hello ruby".sub(/ruby/, "world")
"hello ruby ruby".gsub(/ruby/, "world")
"hello ruby".sub!(/ruby/, "world")

六、总结 #

本章我们学习了:

  1. 创建正则:/pattern/、Regexp.new
  2. 匹配方法:=~、match、match?
  3. 常用模式:字符类、量词、锚点
  4. 替换:sub、gsub

接下来让我们学习Ruby的元编程!

最后更新:2026-03-27