class JobParser::Facets::Deadline
Public Instance Methods
parse()
click to toggle source
# File lib/jobparser/facets/deadline.rb, line 6 def parse special_case_result = use_special_case(:deadline) return special_case_result unless special_case_result.nil? regex = /(Apply before|Closing Date):\s*(.+)$/i result = "" loop_over_elements { |name, elem| regex.match(elem.content) { |m| result = Cleaner.strip_all_white_space(m[2]) } if result.empty? result = Cleaner.strip_all_white_space(elem.content) if elem_is_date(elem) end } result end
Private Instance Methods
elem_is_date(elem)
click to toggle source
# File lib/jobparser/facets/deadline.rb, line 26 def elem_is_date(elem) content = Cleaner.strip_all_white_space(elem.content) words = content.split(" ").length return false if words > 10 || words < 2 is_date = false begin Date.parse(content) is_date = true rescue ArgumentError is_date = false end is_date end