From 7c944c8a5b77f111ed841cfe2a7fe2dd7c639037 Mon Sep 17 00:00:00 2001 From: Jan Date: Wed, 19 May 2010 14:57:58 +0100 Subject: [PATCH] Portuguese date parser updates. --- .../lib/Horde/Date/Parser/Locale/Pt.php | 3 +-- .../lib/Horde/Date/Parser/Locale/Pt/Grabber.php | 19 +++++++--------- .../lib/Horde/Date/Parser/Locale/Pt/Pointer.php | 6 ++---- .../lib/Horde/Date/Parser/Locale/Pt/Repeater.php | 25 +++++++++++----------- .../lib/Horde/Date/Parser/Locale/Pt/Separator.php | 9 ++++---- .../lib/Horde/Date/Parser/Locale/Pt/Timezone.php | 2 +- 6 files changed, 28 insertions(+), 36 deletions(-) diff --git a/framework/Date_Parser/lib/Horde/Date/Parser/Locale/Pt.php b/framework/Date_Parser/lib/Horde/Date/Parser/Locale/Pt.php index 737fddbf9..111caf386 100644 --- a/framework/Date_Parser/lib/Horde/Date/Parser/Locale/Pt.php +++ b/framework/Date_Parser/lib/Horde/Date/Parser/Locale/Pt.php @@ -1,7 +1,6 @@ 'last', - '/\best(e|a)\b/' => 'this', - '/\bpr(o|ó)ximo\b/' => 'next', - - ); + /** + * Regex tokens + */ + public $scanner = array( + '/\b(passado|[uú]ltimo)\b/' => 'last', + '/\best[ea]\b/' => 'this', + '/\bpr[oó]ximo\b/' => 'next', + ); } - diff --git a/framework/Date_Parser/lib/Horde/Date/Parser/Locale/Pt/Pointer.php b/framework/Date_Parser/lib/Horde/Date/Parser/Locale/Pt/Pointer.php index ea93dae16..6f29293b1 100644 --- a/framework/Date_Parser/lib/Horde/Date/Parser/Locale/Pt/Pointer.php +++ b/framework/Date_Parser/lib/Horde/Date/Parser/Locale/Pt/Pointer.php @@ -3,9 +3,7 @@ class Horde_Date_Parser_Locale_Pt_Pointer extends Horde_Date_Parser_Locale_Base_ { public $scanner = array( '/\bantes\b/' => 'past', - '/\b(depois|ap(o|ó)s)\b/' => 'future', - /* '/\bdentro\b/' => 'future', */ - '/\b(dentro(\sde)?|daqui\sa)\b/' => 'future', - ); + '/\b(depois|ap[oó]s|dentro(\s+de)?|daqui(\s+a)?)\b/' => 'future', + ); } diff --git a/framework/Date_Parser/lib/Horde/Date/Parser/Locale/Pt/Repeater.php b/framework/Date_Parser/lib/Horde/Date/Parser/Locale/Pt/Repeater.php index f49a9da36..b3214f6d7 100644 --- a/framework/Date_Parser/lib/Horde/Date/Parser/Locale/Pt/Repeater.php +++ b/framework/Date_Parser/lib/Horde/Date/Parser/Locale/Pt/Repeater.php @@ -4,7 +4,7 @@ class Horde_Date_Parser_Locale_Pt_Repeater extends Horde_Date_Parser_Locale_Base public $monthNameScanner = array( '/\bjan(\.|eiro)?\b/' => 'january', '/\bfev(\.|ereiro)?\b/' => 'february', - '/\bmar(\.|((c|\x87)o))?\b/' => 'march', + '/\bmar(\.|([cç]o))?\b/' => 'march', '/\babr(\.|(il))?\b/' => 'april', '/\bmai(\.|o)?\b/' => 'may', '/\bjun(\.|ho)?\b/' => 'june', @@ -17,28 +17,28 @@ class Horde_Date_Parser_Locale_Pt_Repeater extends Horde_Date_Parser_Locale_Base ); public $dayNameScanner = array( - '/\bse(g(d?(unda?(\s|-)feira))?)?\b/' => 'monday', - '/\bte(r([c|\x87]a?(\s|-)feira)?)?\b/' => 'tuesday', - '/\bqu(a(rta?(\s|-)feira)?)?\b/' => 'wednesday', - '/\bqu(i(nta?(\s|-)feira)?)?\b/' => 'thursday', - '/\bse(x(ta?(\s|-)feira)?)?\b/' => 'friday', - '/\bs[a|\xe1](b(ado)?)?\b/' => 'saturday', - '/\bdo(m(ingo)?)?\b/' => 'sunday', + '/\bseg(d?(unda?(\s|\-)feira))?\b/' => 'monday', + '/\bter([cç]a?(\s|\-)feira)?\b/' => 'tuesday', + '/\bqua(rta?(\s|\-)feira)?\b/' => 'wednesday', + '/\bqui(nta?(\s|\-)feira)?\b/' => 'thursday', + '/\bsex(ta?(\s|\-)feira)?\b/' => 'friday', + '/\bs[aá]b(ado)?\b/' => 'saturday', + '/\bdom(ingo)?\b/' => 'sunday', ); public $dayPortionScanner = array( '/\b(\d*)\s?ams?\b/' => 'am', '/\b(\d*)\s?pms?\b/' => 'pm', - '/\bmanh(a|\xe3)\b/' => 'morning', + '/\bmanh[aã]\b/' => 'morning', '/\btarde\b/' => 'afternoon', - '/\b(fim\s(d(e|a)\s)tarde)\b/' => 'evening', + '/\b(fim\s(d[ea]\s)tarde)\b/' => 'evening', '/\bnoite\b/' => 'night', ); public $unitScanner = array( '/\bano(s)?\b/' => 'year', - '/\b(esta(c|\x87)(a|\xe3)o|(e|\xe9)poca)\b/' => 'season', - '/\bm(e|\xea)s\b/' => 'month', + '/\b(esta[cç][aã]o|[eé]poca)\b/' => 'season', + '/\bm[eê]s\b/' => 'month', '/\bquinzena\b/' => 'fortnight', '/\bsemana(s)?\b/' => 'week', '/\b(fds|fim(\s|(\s|-)de(\s|-))semana)?\b/' => 'weekend', @@ -49,4 +49,3 @@ class Horde_Date_Parser_Locale_Pt_Repeater extends Horde_Date_Parser_Locale_Base ); } - diff --git a/framework/Date_Parser/lib/Horde/Date/Parser/Locale/Pt/Separator.php b/framework/Date_Parser/lib/Horde/Date/Parser/Locale/Pt/Separator.php index bacc1afff..17ef875c7 100644 --- a/framework/Date_Parser/lib/Horde/Date/Parser/Locale/Pt/Separator.php +++ b/framework/Date_Parser/lib/Horde/Date/Parser/Locale/Pt/Separator.php @@ -3,12 +3,11 @@ class Horde_Date_Parser_Locale_Pt_Separator extends Horde_Date_Parser_Locale_Bas { public $atScanner = array( - '/\b(em|@)\b/' => 'at', - ); + '/\b(em|@)\b/' => 'at', + ); public $inScanner = array( - '/\bno\b/' => 'in', - - ); + '/\bno\b/' => 'in', + ); } diff --git a/framework/Date_Parser/lib/Horde/Date/Parser/Locale/Pt/Timezone.php b/framework/Date_Parser/lib/Horde/Date/Parser/Locale/Pt/Timezone.php index 32d28a637..c6e0f41b7 100644 --- a/framework/Date_Parser/lib/Horde/Date/Parser/Locale/Pt/Timezone.php +++ b/framework/Date_Parser/lib/Horde/Date/Parser/Locale/Pt/Timezone.php @@ -3,7 +3,7 @@ class Horde_Date_Parser_Locale_Pt_Timezone extends Horde_Date_Parser_Locale_Base { public $scanner = array( - '/((e(s|d)t|c(s|d)t|m(s|d)t|p(s|d)t)|((gmt)?\s*(\+|\-)\s*\d\d\d\d?)|gmt|utc)/i' => 'tz', + '/((E[SD]T|C[SD]T|M[SD]T|P[SD]T)|((GMT)?\s*[+-]\s*\d{3,4}?)|GMT|UTC)/i' => 'tz', ); } -- 2.11.0