Ruby 中的 gsub 到底是什么?

What exactly is gsub in Ruby?

我还在学习 Ruby 并且我正在练习我的 get 路线和 post 请求、用户登录、登录等基本网站,我来了通过“slug”方法:

def slug
    self.username.strip.downcase.gsub(" ","-")
  end

我尝试使用 irb 来弄清楚 gsub 在做什么:

"hello".gsub(" ","-")

但它给了我:

"hello"

我尝试在数组上使用它,但效果不佳。

但我的问题是 gsub 到底在做什么? gsub 一般是什么?这种方法的结果是什么?

提前致谢!

在Ruby中,Gsub是一个可以在字符串上调用的方法。它将子字符串的所有实例替换为字符串中的另一个子字符串。

Sub 是“替换”的缩写,G 代表“全局”。将 Gsub 视为“全部替换”函数。

一般模式是str.gsub("目标字符串", "替换字符串")。

在您的示例中,没有任何变化,因为字符串“hello”中没有可以用“-”字符替换的空格。

"hello".gsub(" ","-")

以下示例替换“!”在“你好!”使用“,世界”,打印“你好,世界!”

puts "hello!".gsub("!",", world!")

以下示例替换了“!”的每个实例在 ”!!!”使用“123”,打印“123123123”

puts "!!!".gsub("!", "123")