Method: Ptimelog::Timelog#tokenize

Defined in:
lib/ptimelog/timelog.rb

#tokenize(line) ⇒ Object



51
52
53
54
55
56
57
58
59
60
# File 'lib/ptimelog/timelog.rb', line 51

def tokenize(line)
  re_date = /(?<date>\d{4}-\d{2}-\d{2})/
  re_time = /(?<time>\d{2}:\d{2})/
  re_tick = /(?:(?<ticket>.*?): )/
  re_desc = /(?<description>.*?)/
  re_tags = /(?: -- (?<tags>.*)?)/

  regexp = /^#{re_date} #{re_time}: #{re_tick}?#{re_desc}#{re_tags}?$/
  line.match(regexp)
end