草庐IT

php - 查找重叠值的时间总和

全部标签

ruby - 如何在 Ruby 中查找类的每个实例

有没有办法在Ruby中获取某个类的所有对象?澄清一下:classPokemonendpikatchu=Pokemon.newcharmander=Pokemon.new那么,有没有一种方法可以以某种方式检索对这两个对象(pikatchu和charmander)的引用?我实际上想通过初始化将它全部插入一个类数组,但这可能会变大,我假设可能有一种原生的Ruby方法来处理它。 最佳答案 解决方案是使用ObjectSpace.each_object方法ObjectSpace.each_object(Pokemon){|x|px}产生=>2详

ruby,使用正则表达式查找两个字符串之间的内容

使用Ruby+正则表达式,给定:starting-middle+31313131313@mysite.com我只想获取:31313131313即starting-middle+和mysite.com之间是什么这是我目前所拥有的:to='starting-middle+31313131313@mysite.com'to.split(/\+/@mysite.com.*/).first.strip 最佳答案 在第一个+和第一个@之间:to[/\+(.*?)@/,1]在第一个+和最后一个@之间:to[/\+(.*)@/,1]在最后一个+和最

ruby - 将 UTC 时间转换为太平洋时间

我从外部方法得到一个带有时间和日期的字符串,就像这样"07/09/1014:50"有什么方法可以将ruby中的时间转换为“PacificUS”'时间知道它的'UTC'时间?更改占日期?即,如果时差导致日期不同。 最佳答案 既然您正在使用Rails,那么您有很多选择。我建议阅读thisarticle谈论时区。要转换为PST,这两个都是特定于rails的方法。无需重新发明轮子:time=Time.parse("07/09/1014:50")time.in_time_zone("PacificTime(US&Canada)")希望对你有帮

ruby - 总和(&:x) not working any more

我在我的Rails应用程序(4.1.2)中使用payments.sum(&:price)。自从我从Ruby1.9.3更新到2.1.2后,出现了以下错误:wrongnumberofarguments(1for2..3)这些变体有效:payments.map(&:price).sumpayments.to_a.sum(&:price)我必须重写我的代码还是我遗漏了什么?谢谢! 最佳答案 来自documentation:sum(*args)Calculatesthesumofvaluesonagivencolumn.Thevalueisr

ruby-on-rails - 在特定时区的一天开始时获取时间对象

如何获取代表给定时区中特定日期的一天开始的ruby​​Time对象。 最佳答案 date=Date.todaydate.to_time.in_time_zone('America/New_York').beginning_of_day当前输出=>2011-11-0200:00:00-0400Time.now.in_time_zone('Asia/Shanghai').beginning_of_day当前输出=>2011-11-0300:00:00+0800date=Date.todaydate.to_time.in_time_zon

ruby - 如何在没有前导零或前导空格的情况下书写时间?

在Ruby1.9程序中,我想将当前时间格式化为Thu1:51PM。我应该为一天中的小时使用什么格式代码(本例中为1)?Time.now.strftime'%a%I:%M%p'#=>"Thu01:51PM"Time.now.strftime'%a%l:%M%p'#=>"Thu1:51PM"%I有一个前导零(01)。%l有一个前导空格(1)。我在strftimedocumentation中没有看到小时的任何其他格式代码.我不能使用.lstrip因为空格在字符串的中间。我可以使用.gsub(/+/,""),但我想知道是否有更简洁、更简单的方法。 最佳答案

Ruby - 查找两个数组不相同的元素

我一直在思考以下问题-有两个数组,我需要找到它们不常见的元素,例如:a=[1,2,3,4]b=[1,2,4]预期的答案是[3]。到目前为止,我一直这样做:a.select{|elem|!b.include?(elem)}但它给了我O(N**2)时间复杂度。我相信它可以更快地完成;)此外,我一直在考虑以这种方式获取它(使用一些与&相反的方法,它给出了2个数组的公共(public)元素):a!&b#=>doesn'tworkofcourse另一种方法可能是将两个数组相加并使用类似于uniq的方法找到唯一元素,这样:[1,1,2,2,3,4,4].some_method#=>wouldret

ruby-on-rails - 在 Rails 中将本地时间转换为 UTC

在我的MySQL数据库中,updated_at字段存储为UTC。上周在美国东部时间晚上7点输入了一条记录,它的updated_at值为“2012-08-0123:00:00”。我正在尝试将Web客户端的本地时间转换为UTC,以便与数据库中的updated_at字段进行比较。例如,我想将“08/01/201207:00pm”转换为“2012-08-0123:00:00”(考虑到我在美国东部时间),但我不见了转换的时区方面。'7:00pm'是本地时间,可以来自任何时区。我当前的代码:ruby-1.9.2-head:015>from_date=DateTime.strptime('08/01

ruby-on-rails - Rails 时间奇数 : "x days from now"

当用户注册到我的网站之一进行免费试用时,我将他们的帐户到期时间设置为“14.days.from_now”。然后在主页上我显示他们还剩多少天,这是我得到的:(user.trial_expires-Time.now)/86400(因为一天有86400秒,即60*60*24)有趣的是,结果超过14,因此四舍五入为15。在控制台中进行更仔细的调查后,这种情况只会在未来两天发生(如果您明白我的意思)。例如>>Time.now=>FriOct2911:09:2601002010>>future_1_day=1.day.from_now=>Sat,30Oct201011:09:27BST01:00#

ruby - 如何使用 Ruby 查找字符串中最后一次出现的数字?

使用Ruby...给定以下字符串:x="blah_blah.do.dah[4543]junk_junk"如何删除最后一个数字/数字后的所有文本?我认为最简单的方法可能是找到最后一次出现的索引,然后删除该索引之后的所有内容。但是,我似乎无法弄清楚如何获得该索引。我所有使用正则表达式的尝试都失败了。 最佳答案 有答案如何做你需要的还要找到最后一次出现的数字:x='blah_blah.do.dah[4543]junk_junk'x.rindex(/\d/) 关于ruby-如何使用Ruby查找字