草庐IT

c++ - 返回对临时的引用

全部标签

ruby - 为什么 Array.to_s 返回括号?

对于一个数组,当我输入:putsarray[0]==>text然而当我打字时putsarray[0].to_s==>["text"]为什么是括号和引号?我错过了什么?附录:我的代码如下所示page=open(url){|f|f.read}page_array=page.scan(/regex/)#pullspartialurlsintoanarraypartial_url=page_array[0].to_sfull_url=base_url+partial_url#addseachpartialurltoaconsistentbase_urlputsfull_url我得到的是这样的:

ruby - 从哈希返回单个键?

我想知道如何从哈希中返回特定的键?例子:moves=Hash["Kick",100,"Punch",50]我如何返回此哈希中的第一个键“Kick”?注意:我知道以下函数将返回散列中的所有键,但我只想返回一个键。moves.keys#=>["Kick","Punch"] 最佳答案 您可以使用:first_key,first_value=moves.first或等效地:first_key=moves.first.first也很不错:first_key=moves.each_key.first另一种可能性,moves.keys.first

ruby - Rspec 3.0 如何模拟替换参数但没有返回值的方法?

我搜索了很多,但就是想不通,尽管它看起来很基本。这是我想做的事情的一个简化示例。创建一个执行某些操作但不返回任何内容的简单方法,例如:classTestdeftest_method(param)putsparamendtest_method("hello")end但在我的rspec测试中,我需要传递一个不同的参数,例如“再见”而不是“你好”。我知道这与stub和模拟有关,我查看了文档但无法弄清楚:https://relishapp.com/rspec/rspec-mocks/v/3-0/docs/method-stubs如果我这样做:@test=Test.newallow(@test)

ruby - 引用 CSV 输出中的所有字段

@out=File.open("#{File.expand_path("CSV")}/#{file_name}.csv","w")CSV::Writer.generate(@out)do|csv|csv当我运行上面的代码时,它将CSV中的值存储为01、02.测试我希望它们存储为“01”、“02”、“测试” 最佳答案 改变CSV::Writer.generate(@out)do|csv|到CSV::Writer.generate(@out,{:force_quotes=>true})do|csv|

c - 奇怪的 "half to even"不同语言的舍入

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭10年前。GNUbash,版本4.2.24:$>printf"%.0f,%.0f\n"48.549.548,50ruby1.8.7>printf("%.0f,%.0f\n",48.5,49.5)48,50Perl5.12.4$>perl-e'printf("%.0f,%.0f\n",48.5,49.5)'48,50海湾合作委员会4.5.3:>printf("%.0

ruby - 是否可以让 class.property = x 返回 x 以外的东西?

假设我有一个Ruby类:classMyClassdefself.propertyreturn"someVal"enddefself.property=(newVal)#dosomethingtoset"property"success=truereturnsuccess#successisabooleanendend如果我尝试执行MyClass.property=x,整个语句的返回值始终是x。许多基于C/受启发的语言都习惯于返回bool“成功”值-是否可以使用Ruby中的“等于语法”为setter执行此操作?此外-如果这不可能,为什么不呢?允许“equalssetter”操作返回一个值

ruby - 显示过时的 gem ?

为了避免崩溃,我在我的Gemfile中为每个gem指定了版本号:gem'sass-rails','~>3.1.5'gem'coffee-rails','~>3.1.1'gem'uglifier','~>1.0.3'gem'haml-rails',"~>0.3.4"gem'simple_form','~>1.5.2'但我至少想知道是否有一些我还没有安装的更新版本。例如,simple_form2.0.0已经发布。我可以检查RubyGems上的每个gem,但必须有一个自动工具来完成这项工作,对吧? 最佳答案 使用最新版本(1.1)的bun

ruby - 我如何检查字符串中是否存在某个单词,如果不存在,则在 ruby​​ 中返回 false?

假设我有一个字符串str="Thingstodo:eatandsleep."如何检查"do:"是否存在于str中,不区分大小写? 最佳答案 像这样:puts"yes"ifstr=~/do:/i要返回一个bool值(大概是从一个方法中),将匹配结果与nil进行比较:defhas_do(str)(str=~/do:/i)!=nilend或者,如果你不喜欢!=nil那么你可以使用!~而不是=~并否定结果:defhas_do(str)notstr!~/do:/iend但我真的不喜欢双重否定......

ruby-on-rails - rails 控制台要求 nokogiri 返回 false(但在 irb 中工作)

我的环境是ruby1.9.3p327和rails3.2.8onamac。我将gemnokogiri添加到我的Gemfile中。运行bundleinstall命令。命令显示Usingnokogiri(1.5.5)和gemlist命令返回nokogiri(1.5.5)。在Rails控制台中require'nokogiri'返回false但在irb中它返回true。这怎么可能? 最佳答案 根据theAPIdocumentation的前两行,require将:如果加载成功返回true如果已经加载则返回false如果找不到文件则引发LoadE

ruby-on-rails - 让 find_by in rails 返回多个结果

我正在尝试返回用户创建的所有组。所有组都与用户标识相关联。当我运行find_by查询时,它只返回第一个结果。有没有办法让它返回多个?提前致谢 最佳答案 我正在写一个单独的答案,因为我没有50分,无法评论JamesLowrey的答案。find_all_by已弃用(Ruby4.2)。要从模型中获取事件记录列表,请执行以下操作:Model.where(attribute_name:val)例如,要在Vehicle表(具有列名称“model_name”)中查找所有记录,使得model_name的值为“Audi”,执行@vehicles=Ve