是的,Ruby中的正则表达式支持自动替换(即替换操作)。你可以使用gsub
或sub
方法来实现这一功能。
gsub
方法会替换字符串中所有匹配正则表达式的子串,而sub
方法只会替换第一个匹配的子串。
下面是一些示例:
# 使用gsub替换所有匹配的子串
str = "Hello, world!"
new_str = str.gsub(/world/i, "Ruby")
puts new_str # 输出: Hello, Ruby!
# 使用sub替换第一个匹配的子串
new_str = str.sub(/world/i, "Ruby")
puts new_str # 输出: Hello, Ruby!
在上面的示例中,我们使用正则表达式/world/i
来匹配字符串中的"world"(不区分大小写)。然后,我们使用gsub
和sub
方法将匹配到的子串替换为"Ruby"。
注意,gsub
和sub
方法都会返回一个新的字符串,而不会修改原始字符串。