草庐IT

版本不匹配

全部标签

ruby - 在 rbenv 中从以前版本的 Ruby 复制 gem

我用rbenv安装了Ruby1.9.3-p286。现在,在安装了更新版本(p327)之后,显然,它对以前版本安装的GEM一无所知。是否可以将Gems从那个版本复制到新版本,这样就不需要重新下载它们了? 最佳答案 您可以复制gems/和bin/文件夹,但这会导致问题。bin/中的文件具有硬编码路径。我建议重新安装它们,就像这样简单:$rbenvlocal1.9.3-p286$gemlist|cut-d""-f1>my-gems$rbenvlocal1.9.3-p327$geminstall$(catmy-gems)

ruby - Rspec 匹配哈希数组

我有一个哈希数组,为了便于论证,它看起来像这样:[{"foo"=>"1","bar"=>"1"},{"foo"=>"2","bar"=>"2"}]使用Rspec,我想测试"foo"=>"2"是否存在于数组中,但我不关心它是第一项还是第二项。我试过:[{"foo"=>"1","bar"=>"2"},{"foo"=>"2","bar"=>"2"}].shouldinclude("foo"=>"2"))但这行不通,因为哈希值应该完全匹配。有什么方法可以部分测试每个散列的内容吗? 最佳答案 怎么样?hashes=[{"foo"=>"1","

ruby - 如何使用正则表达式匹配字符或不匹配

我正在尝试获取一组可能有或没有分隔符的数字,并以标准格式返回它们。以SSN为例:ex1="Anexample123-45-6789"ex2="123.45.6789somemorethings"ex3="123456789thankyouRubymayIhaveanother"都应该进入返回“123-45-6789”的方法基本上,除数字或字母外的任何内容(包括任何内容)都应返回XXX-XX-XXXX格式的SSN。stumping的部分是正则表达式识别不能有任何东西的方式。到目前为止,我在识别我的ssn方面有什么:defformat_ssns(string)string.scan(/\d

ruby - 删除文件中第二个文件中没有匹配项的行的最快方法是什么?

我有两个文件,wordlist.txt和text.txt.第一个文件,wordlist.txt,包含中文、日文和韩文的大量单词列表,例如:你你们我第二个文件,text.txt,包含长段落,例如:你们要去哪里?卡拉OK好不好?我想创建一个新单词列表(wordsfount.txt),但它应该只包含来自wordlist.txt的行在text.txt中至少找到一次.上面的输出文件应该显示:你你们“我”未在此列表中找到,因为它从未在text.txt中找到.我想找到一种非常快速的方法来创建此列表,该列表仅包含第一个文件中在第二个文件中找到的行。我知道在BASH中检查worlist.txt中每一行的

ruby - 如何在 Ubuntu 中安装最新版本的 ruby​​?

我的机器上目前有ruby​​版本1.8.2,我想将它升级到1.9.2。我该怎么做? 最佳答案 我使用Ubuntu,我发现安装更新版本的Ruby最简单的方法是使用rvm。说明在这里:https://rvm.io/rvm/install/基本上,它会为用户在本地安装不同版本的Ruby,并根据您决定使用的版本更新Ruby和gems的环境变量。就是这么简单:jim@schubert:~$rvmusesystemNowusingsystemruby.jim@schubert:~$ruby-vruby1.8.7(2010-08-16patchl

ruby - 如何从终端更新我的 Ruby 版本?

我在我的LinuxMint10虚拟机上运行命令“ruby-v”并得到:stapiagutierrez@Sergio-Linux-VM~/Desktop/Tickets/tickets$ruby-vruby1.8.7(2010-06-23patchlevel299)[i686-linux]如何升级到最新版本1.9.2? 最佳答案 我建议使用RVM.这样您可以保留1.8.7版本的Ruby,但您也可以轻松安装新版本:rvminstall1.9.2毫不费力地在它们之间切换:rvm1.8.7rvm1.9.2使用rvm你可以像这样设置你的默认R

ruby - 在 Ruby 中,有没有办法轻松地只删除数组中的 1 个匹配项?

在Ruby中,数组减法或拒绝>>[1,3,5,7,7]-[7]=>[1,3,5]>>[1,3,5,7,7].reject{|i|i==7}=>[1,3,5]将删除数组中的所有条目。是否可以轻松删除1次? 最佳答案 >>a=[1,3,5,7,7]>>a.slice!(a.index(7))=>7>>a=>[1,3,5,7] 关于ruby-在Ruby中,有没有办法轻松地只删除数组中的1个匹配项?,我们在StackOverflow上找到一个类似的问题: https:

ruby - 如何创建匹配所有请求并指向一个资源/页面的 Rails 3 路由?

我有一个需要暂时停止服务的Rails应用程序(Rails3.0)。虽然这是有效的,但我想创建一个新路由,将所有请求定向到单个静态内容。我设置了一个Controller来为我的静态页面提供服务。我试过这样的:match'*'=>'content#holding'和match'*/*'=>'content#holding'匹配通配符路由,如下所述:Rails3routeglobbing没有成功。这可能是一个非常简单的答案,但我想不通。/编辑/忘了说我在routes.rb文件的最顶部确实有这条规则。 最佳答案 Rails需要将url参数绑

ruby - 如何在许多匹配项中使用 ruby​​ gsub Regexp?

我的csv文件内容在引用的文本中有双引号test,first,line,"youarea"kind"man",thanksagain,second,li,"my"boss"isyou",good我需要用“”替换每一个前面或后面没有逗号的双引号test,first,line,"youarea""kind""man",thanksagain,second,li,"my""boss""isyou",good所以"被替换为""我试过了x.gsub(/([^,])"([^,])/,"#{$1}\"\"#{$2}")但没用 最佳答案 您的正则表

ruby-on-rails - 如何确定 rails 中是否存在返回 true 或 false 的匹配项?

我想创建一个针对电子邮件处理返回true或false的测试。目前,如果电子邮件地址以r+开头则为真,否则为假。这将帮助我们的服务器忽略我们遇到的大量垃圾邮件。例子:r+kldslkadslkadslk@site.com..truer+123123312@site.com..truevigraaaa@site.com..FALSE用Rails/ruby/regex处理这个问题的最有效方法是什么?谢谢目标是rails/ruby中的一个衬里:ABORTifXXXXX==0 最佳答案 这将匹配:/^r\+.*@site.com$/例子:>>