Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby中的gsub到底是什么?_Ruby_Gsub - Fatal编程技术网

Ruby中的gsub到底是什么?

Ruby中的gsub到底是什么?,ruby,gsub,Ruby,Gsub,我仍在学习Ruby,我正在练习基本网站的get路线和post请求、用户登录、登录等,我遇到了一种“slug”方法: 我尝试使用irb来了解gsub在做什么: "hello".gsub(" ","-") 但它给了我: "hello" 我试着在阵列上使用它,但效果不太好 但我的问题是gsub到底在这里做什么?一般来说,什么是gsub?这种方法的结果是什么 提前谢谢 在Ruby中,Gsub是一种可以在字符串上调用的方法

我仍在学习Ruby,我正在练习基本网站的
get
路线和
post
请求、用户登录、登录等,我遇到了一种“slug”方法:

我尝试使用irb来了解gsub在做什么:

"hello".gsub(" ","-")
但它给了我:

"hello"
我试着在阵列上使用它,但效果不太好

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


提前谢谢

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

Sub是“substitute”的缩写,G代表“global”。将Gsub看作是一个“replace all”函数

一般模式是str.gsub(“目标字符串”、“替换字符串”)

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

"hello".gsub(" ","-")
以下示例将“hello!”中的“!”替换为“world”,打印“hello,world!”

以下示例将“!!!”中的每个“!”实例替换为“123”,并打印“123123”


@没问题!我刚刚编辑了我的答案,为您提供了更多的示例。“它将子字符串的所有实例替换为另一个”—是的,但这只是故事的一半。您应该添加一个使用模式的示例。正则表达式是
gsub
真正的亮点。如果您能够详细解释文档中您不清楚的内容,这将非常有帮助。这样,我们可以避免浪费大量的时间和精力,确保我们不会重复你已经知道的东西,同样重要的是,我们不会重复你已经读过但不理解的东西。对于Ruby开发人员来说,理解他们的文档未能向您正确解释概念的原因也是非常重要的,这样他们就可以改进文档,防止未来的开发人员遇到同样的问题。这与ActiveRecord、Sinatra和Visual Studio代码有什么关系也非常不清楚。你在用Ruby写VSCode扩展吗?有人清楚地理解了我的要求。我来到Stack Overflow问了一个简单的问题,得到了一个简单的答案,事情就这样发生了。我花了30分钟研究了之前提出的关于gsub的问题,没有人知道我想要的答案。不,gsub不是我已经知道的,这就是为什么我问这个问题。我已经标记了ActiveRecord、Sinatra和VSCode,因为这是我在应用程序中使用的。抱歉,我不知道我应该使用的标记有法律规定。如果我搜索与X问题相关的问题,我不想被Ruby问题困扰。我建议阅读的文档。
"hello".gsub(" ","-")
puts "hello!".gsub("!",", world!")
puts "!!!".gsub("!", "123")