草庐IT

ruby - 冒号的意义 : in Ruby

这个问题在这里已经有了答案:关闭10年前。PossibleDuplicate:UnderstandingSymbolsInRubyWhatisthecolonoperatorinRuby?我真的觉得问这个很天真,但我要继续问::的重要性是什么?在ruby中?我已经看到它被用在很多地方,比如params[:id]或者喜欢x.

ruby - 用冒号对数字进行排序

我有一个圣经经文、时间或其他一些带有数字和冒号的字符串的列表。我希望将这些分类为:1:52:12:82:1411:36我将如何对这些数字进行排序?我假设我必须解析字符串,用冒号分隔,然后排序。我的尝试给了我这样的东西:1:511:362:12:142:8 最佳答案 使用Enumerable#sort_byinput=%w|1:511:362:12:142:8|input.sort_by{|e|e.split(':').map(&:to_i)}#⇒["1:5","2:1","2:8","2:14","11:36"]map(&:to_i

ruby - 清理 gem(和丝瓜络)在标签内前导冒号之前删除文本

当我注意到像“6:30pm”这样的时间正在变成“30pm”时,在尝试清理一些html片段时,Loofah和Sanitize都遇到了一些奇怪的行为。做了一些调查,发现了以下内容:Loofah.scrub_fragment("asdfasdf6:30pm",:strip).to_html#=>"asdfasdf30pm"Loofah.scrub_fragment("6:30pm",:strip).to_html#=>"6:30pm"Loofah.scrub_fragment("asdfasdf6:30pm",:strip).to_html#=>"asdfasdf6:30pm"Loo

ruby - URI Extract 在冒号处转义,有什么办法可以避免这种情况?

我在下面有以下函数,通常会吐出一个URL,例如path.com/p/12345。有时,当一条推文在推文前包含一个冒号时,例如RT:Somethingpath.com/p/123函数将返回:personName:path.com/p/12345我的功能:$a=10defgrabTweets()tweet=Twitter.search("[pic]"+"path.com/p/",:rpp=>$a,:result_type=>"recent").mapdo|status|tweet="#{status.text}"#class=stringurls=URI::extract(tweet)#r

ruby-on-rails - 用于捕获冒号分隔的键值对的正则表达式,具有多行值

我目前正在使用RubyonRails(在Eclipse中)开发一个项目,我的任务是使用正则表达式将数据block拆分为相关部分。我决定根据3个参数分解数据:该行必须以大写字母开头(等同于RegEx-/^[A-Z]/)它必须以:(RegEx等效-/$":"/)结尾如果有任何帮助,我将不胜感激....我在我的Controller中使用的代码是:@f=File.open("report.rtf")@fread=@f.read@chunk=@fread.split(/\n/)其中@chunk是将由拆分创建的数组,@fread是要拆分的数据(按新行)。任何帮助将不胜感激,非常感谢!我不能发布确切

ruby-on-rails - 带双冒号的 Ruby 类命名约定

我知道Ruby中的::是一个范围解析运算符,用于访问模块和类中的方法,但是使用::命名类是否合适?例子classFoo::Bar::Bee 最佳答案 如果您所说的“正确”是指句法正确——是。这样做本质上没有错,如果您在单独的文件中定义子类(下面的示例),那么这是一种相对常见的做法。#lib/foo.rbmoduleFooend#lib/foo/bar.rbclassFoo::Barend如果你不能确定父模块或类已经存在,我会避免以这种方式定义类,因为你会得到一个NameError由于父(例如Foo)不存在。出于这个原因,您不会看到太

ruby - ruby 中的冒号前缀字符串

我是Ruby新手,刚刚看到这段代码:rr={id:215043,:'OfficialName'=>"Google,Inc."}bug最多的就是这个:'OfficialName'=>。它看起来像一个带空格的符号。当我打印它时,我看到:{:id=>"215043",:"OfficialName"=>"Google,Inc."}请帮助我理解这一点。 最佳答案 Whatbugsbethemostisthis:'OfficialName'=>.Itlookslikeasymbolwithwhitespaces.就是这样。p:'Official

ruby - 正则表达式:问号后跟冒号作为替代

在railscucumber中有这个正则表达式当/^(?:|I)转到(.+)$/do|page_name|我知道?:是一个非捕获组,但是当它作为由|分隔的替代项存在时,这意味着什么? 最佳答案 这不是一个特殊的组,它只是表示“不匹配任何内容或I”:http://www.rubular.com/r/H3iJFLXaab这应该和写(?:I)?一样(或者更准确地说,(?:I)??-因为空字符串优先于I,另请参见Isthelazyversionofthe'optional'quantifier('??')everusefulinaregul

ruby-on-rails - 那是一个变量,一个符号,一个方法,为什么这个有冒号而那个没有?

Rails中不一致的命名约定让我感到困惑。似乎语法无处不在。以下是一些示例:下面的迁移为什么有逗号?而且,为什么关键字default前面没有冒号?这个default关键字是什么,一个方法,还是一个变量,一个符号?那是什么东西?:add_column:zombies,:rotting,:boolean,default:false这是另一个例子:为什么age不是:age(带冒号)?为什么make_rotting在调用之前带有“:”?classZombie20self.rotting=trueendendend 最佳答案 对于Java和P

ruby - ":*"(冒号星号)在 Ruby 中是什么意思?

在查找如何计算数字的阶乘时,我遇到了这段代码:(1..5).inject(:*)||1#=>120什么是(:*)||1在做什么?它与这行代码相比如何(1..5).inject(1){|x,y|x*y}#=>120,它使用.inject实现类似的功能? 最佳答案 冒号星号本身在Ruby中没有任何意义。这只是一个symbol你可以将一个符号传递给inject可枚举的方法。该符号命名要在可枚举元素上使用的方法或运算符。例如:(1..5).inject(:*)#=>1*2*3*4*5=120(1..5).inject(:+)#=>1+2+3