求助!请帮忙用Ruby写个通用方法来处理字符串

Rick815 发布于 2014/04/22 17:24
阅读 181
收藏 0

 

最近刚接触Ruby.遇到一个问题。不知如何替换字符转里的一部分内容。

原字符串为:

“ Your dadadadada <Current Date + 14 days>.\r\nYou dadadadadatrtrton <Current Date + 30 days>.”

需要写个函数去读这个字符串,把<Current Date + 14 days>和<Current Date + 30 days> 替换成具体的时间April 29, 2014和May 09, 2014。其中Current Date对应的是Today, 14 days和30 days 中的数字都是会变动的。

最后返回的字符串格式是:

“ Your dadadadada April 29, 2014.\r\nYou dadadadadatrtrton May 09, 2014."

加载中
0
Zoker
Zoker

你把<   >里面的东西搞成#{   }这样,然后在格式化输出下日期不就完事了

0
oldpig
oldpig

require 'date'

def transform(src)
    extractor = /<Current Date \+ (\d+) days>/
    src.gsub(extractor) { |m|
        (Date.today + $1.to_i).strftime('%B %d, %Y')
    }
end


oldpig
oldpig
回复 @Rick815 : 如果这个答案解决了你的问题,请将它选为最佳答案。这是开源社区的运作方式。
Rick815
Rick815
太谢谢了:)
返回顶部
顶部