Class: Mods::Date::EmbeddedThreeDigitYearFormat

Inherits:
ExtractorDateFormat show all
Defined in:
lib/mods/date.rb

Overview

Full-text extractor that tries hard to pick any year present in the data

Constant Summary collapse

REGEX =
/(?<prefix>-)?(?<!\d)(?<year>\d{3})(?!\d)(?!\d)/

Instance Attribute Summary

Attributes inherited from Mods::Date

#date, #xml

Class Method Summary collapse

Methods inherited from ExtractorDateFormat

supports?

Methods inherited from Mods::Date

#approximate?, #as_range, #encoding, #encoding?, #end?, from_element, #inferred?, #initialize, #key?, parse_date, #point, #precision, #qualifier, #questionable?, #single?, #start?, #text, #to_a, #type

Constructor Details

This class inherits a constructor from Mods::Date

Class Method Details

.normalize_to_edtf(text) ⇒ Object



236
237
238
239
# File 'lib/mods/date.rb', line 236

def self.normalize_to_edtf(text)
  matches = text.match(REGEX)
  "#{matches[:prefix]}#{matches[:year].rjust(4, "0")}"
end