Sha256: 6026851cb9670e00cd93c386aaf777b305a5dc9bf97c89e68a4a7d3414ec4fc3
Contents?: true
Size: 1.12 KB
Versions: 6
Compression:
Stored size: 1.12 KB
Contents
class EmailHeaderMatcher EMAIL_HEADERS_WITH_DATE_MARKERS = [ # Dutch ["Sendt"], # English ["Sent"], # French ["Date"], # German ["Gesendet"], # Portuguese ["Enviada em"], # Spanish ["Enviado"], # Spanish (Mexican) ["Fecha"], ] EMAIL_HEADERS_WITH_DATE_REGEXES = EMAIL_HEADERS_WITH_DATE_MARKERS.map do |header| /^[[:space:]\*]*(?:#{header.join("|")})[[:space:]\*]*:.*\d+/ end EMAIL_HEADERS_WITH_TEXT_MARKERS = [ # Dutch ["Fra", "Til", "Emne"], # English ["From", "To", "Cc", "Reply-To", "Subject"], # French ["De", "À", "Répondre à", "Objet"], # German ["Von", "An", "Betreff"], # Portuguese ["De", "Para", "Assunto"], # Spanish ["De", "Para", "Asunto"], ] EMAIL_HEADERS_WITH_TEXT_REGEXES = EMAIL_HEADERS_WITH_TEXT_MARKERS.map do |header| /^[[:space:]\*]*(?:#{header.join("|")})[[:space:]\*]*:.*[[:word:]]+/ end EMAIL_HEADER_REGEXES = [ EMAIL_HEADERS_WITH_DATE_REGEXES, EMAIL_HEADERS_WITH_TEXT_REGEXES, ].flatten def self.match?(line) EMAIL_HEADER_REGEXES.any? { |r| line =~ r } end end
Version data entries
6 entries across 6 versions & 1 rubygems