2013-04-13 27 views
1

我使用的布雷特·特普斯特拉的Ruby脚本来查找和记录完成TaskPaper项目,如这里找到:https://gist.github.com/ttscoff/1913007查找和红宝石更换时间字符串TaskPaper记录

该脚本搜索线有看起来像标记线'@done(YYYY-MM-DD)',并将这些行发送到第一天而不使用@done字符串。

但是,我的物品还有一个'@time(HH:MM)'标签用于更具体的时间戳。我想要做的是另外找到时间标签,只抓住HH:MM字符串,将它移动到条目的前面,也没有@time标签。

我知道这个问题是一种特定的,我没有Ruby的经验。一直下午搜索和试验无济于事。任何帮助将非常感激。

回答

0

尝试在你输入找到这种模式

1.9.3p429 :001 > s = 'foo bar baz @time(12:00)' 
=> "foo bar baz @time(12:00)" 
1.9.3p429 :002 > s.scan(/\@time\((\d{1,2}\:\d{2})\)/) 
=> [["12:00"]]