From 573b3d33f1e634b46075108fe9f5f77d6b43216a Mon Sep 17 00:00:00 2001 From: Jan Schneider Date: Wed, 12 May 2010 16:29:49 +0100 Subject: [PATCH] Further improvements. --- .../lib/Horde/Date/Parser/Locale/Pt/Grabber.php | 8 ++- .../lib/Horde/Date/Parser/Locale/Pt/Ordinal.php | 5 ++ .../lib/Horde/Date/Parser/Locale/Pt/Pointer.php | 5 +- .../lib/Horde/Date/Parser/Locale/Pt/Repeater.php | 68 +++++++++++----------- .../lib/Horde/Date/Parser/Locale/Pt/Separator.php | 9 +-- 5 files changed, 53 insertions(+), 42 deletions(-) diff --git a/framework/Date_Parser/lib/Horde/Date/Parser/Locale/Pt/Grabber.php b/framework/Date_Parser/lib/Horde/Date/Parser/Locale/Pt/Grabber.php index de4012ac0..bb790a5d1 100644 --- a/framework/Date_Parser/lib/Horde/Date/Parser/Locale/Pt/Grabber.php +++ b/framework/Date_Parser/lib/Horde/Date/Parser/Locale/Pt/Grabber.php @@ -5,9 +5,11 @@ class Horde_Date_Parser_Locale_Pt_Grabber extends Horde_Date_Parser_Locale_Base_ * Regex tokens */ public $scanner = array( - '/(passado|(u|ú)ltimo)\w?/' => 'last', - '/est(e|a)\w?/' => 'this', - '/pr(o|ó)ximo\w?/' => 'next', + + '/\b(passado|(u|ú)ltimo)\b/' => 'last', + '/\best(e|a)\b/' => 'this', + '/\bpr(o|ó)ximo\b/' => 'next', + ); } diff --git a/framework/Date_Parser/lib/Horde/Date/Parser/Locale/Pt/Ordinal.php b/framework/Date_Parser/lib/Horde/Date/Parser/Locale/Pt/Ordinal.php index 8887edb06..c053e7050 100644 --- a/framework/Date_Parser/lib/Horde/Date/Parser/Locale/Pt/Ordinal.php +++ b/framework/Date_Parser/lib/Horde/Date/Parser/Locale/Pt/Ordinal.php @@ -1,7 +1,12 @@ 'past', - '/\b(depois|ap(o|ó)s)?\b/' => 'future', - '/\bdentro?\b/' => 'future', + '/\b(depois|ap(o|ó)s)\b/' => 'future', + /* '/\bdentro\b/' => 'future', */ + '/\b(dentro(\sde)?|daqui\sa)\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 95ef121d6..f49a9da36 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 @@ -2,48 +2,50 @@ class Horde_Date_Parser_Locale_Pt_Repeater extends Horde_Date_Parser_Locale_Base_Repeater { public $monthNameScanner = array( - '/^jan\.?(eiro)?$/' => 'january', - '/^fev\.?(ereiro)?$/' => 'february', - '/^mar\.?((c|ç)o)?$/' => 'march', - '/^abr\.?(il)?$/' => 'april', - '/^mai\.?o?$/' => 'may', - '/^jun\.?(ho)?$/' => 'june', - '/^jul\.?(ho)?$/' => 'july', - '/^ago\.?(sto)?$/' => 'august', - '/^set\.?(embro)?$/' => 'september', - '/^out\.?(ubro)?$/' => 'october', - '/^nov\.?(embro)?$/' => 'november', - '/^dez\.?(embro)?$/' => 'december', + '/\bjan(\.|eiro)?\b/' => 'january', + '/\bfev(\.|ereiro)?\b/' => 'february', + '/\bmar(\.|((c|\x87)o))?\b/' => 'march', + '/\babr(\.|(il))?\b/' => 'april', + '/\bmai(\.|o)?\b/' => 'may', + '/\bjun(\.|ho)?\b/' => 'june', + '/\bjul(\.|ho)?\b/' => 'july', + '/\bago(\.|sto)?\b/' => 'august', + '/\bset(\.|embro)?\b/' => 'september', + '/\bout(\.|ubro)?\b/' => 'october', + '/\bnov(\.|embro)?\b/' => 'november', + '/\bdez(\.|embro)?\b/' => 'december', ); public $dayNameScanner = array( - '/^se(g(d?(unda?(\s|-)feira))?)?$/' => 'monday', - '/^te(r([c|ç]a?(\s|-)feira)?)?$/' => 'tuesday', - '/^qu(a(rta?(\s|-)feira)?)?$/' => 'wednesday', - '/^qu(i(nta?(\s|-)feira)?)?$/' => 'thursday', - '/^se(x(ta?(\s|-)feira)?)?$/' => 'friday', - '/^s[a|á](b(ado)?)?$/' => 'saturday', - '/^do(m(ingo)?)?$/' => 'sunday', + '/\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', ); public $dayPortionScanner = array( - '/^manh(a|ã)?$/' => 'morning', - '/^tarde?$/' => 'afternoon', - '/^(fim\s(d(e|a)\s)?tarde)?$/' => 'evening', - '/^noite?$/' => 'night', + '/\b(\d*)\s?ams?\b/' => 'am', + '/\b(\d*)\s?pms?\b/' => 'pm', + '/\bmanh(a|\xe3)\b/' => 'morning', + '/\btarde\b/' => 'afternoon', + '/\b(fim\s(d(e|a)\s)tarde)\b/' => 'evening', + '/\bnoite\b/' => 'night', ); public $unitScanner = array( - '/^(ano(s)?)?$/' => 'year', - '/^(esta(c|ç)(a|ã)o?!época)$/' => 'season', - '/^m(e|ê)s?$/' => 'month', - '/^quinzena?$/' => 'fortnight', - '/^semana?s?$/' => 'week', - '/^(fds|fim(\s|(\s|-)de(\s|-))semana)?$/' => 'weekend', - '/^dia?s?$/' => 'day', - '/^hora?s?$/' => 'hour', - '/^minuto?s?$/' => 'minute', - '/^segundo?s?$/' => 'second', + '/\bano(s)?\b/' => 'year', + '/\b(esta(c|\x87)(a|\xe3)o|(e|\xe9)poca)\b/' => 'season', + '/\bm(e|\xea)s\b/' => 'month', + '/\bquinzena\b/' => 'fortnight', + '/\bsemana(s)?\b/' => 'week', + '/\b(fds|fim(\s|(\s|-)de(\s|-))semana)?\b/' => 'weekend', + '/\bdia(s)?\b/' => 'day', + '/\bhora(s)?\b/' => 'hour', + '/\bminuto(s)?\b/' => 'minute', + '/\bsegundo(s)?\b/' => 'second', ); } 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 986633fe9..bacc1afff 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,11 +3,12 @@ class Horde_Date_Parser_Locale_Pt_Separator extends Horde_Date_Parser_Locale_Bas { public $atScanner = array( - '/^(em|@)$/' => 'at', - ); + '/\b(em|@)\b/' => 'at', + ); public $inScanner = array( - '/^no$/' => 'in', - ); + '/\bno\b/' => 'in', + + ); } -- 2.11.0