public SpanishDateTimeExtractorConfiguration()
 {
     DatePointExtractor   = new BaseDateExtractor(new SpanishDateExtractorConfiguration());
     TimePointExtractor   = new BaseTimeExtractor(new SpanishTimeExtractorConfiguration());
     DurationExtractor    = new BaseDurationExtractor(new SpanishDurationExtractorConfiguration());
     UtilityConfiguration = new SpanishDatetimeUtilityConfiguration();
 }
コード例 #2
0
        public SpanishCommonDateTimeParserConfiguration(DateTimeOptions options) : base(options)
        {
            UtilityConfiguration = new SpanishDatetimeUtilityConfiguration();

            UnitMap       = DateTimeDefinitions.UnitMap.ToImmutableDictionary();
            UnitValueMap  = DateTimeDefinitions.UnitValueMap.ToImmutableDictionary();
            SeasonMap     = DateTimeDefinitions.SeasonMap.ToImmutableDictionary();
            CardinalMap   = DateTimeDefinitions.CardinalMap.ToImmutableDictionary();
            DayOfWeek     = DateTimeDefinitions.DayOfWeek.ToImmutableDictionary();
            MonthOfYear   = DateTimeDefinitions.MonthOfYear.ToImmutableDictionary();
            Numbers       = DateTimeDefinitions.Numbers.ToImmutableDictionary();
            DoubleNumbers = DateTimeDefinitions.DoubleNumbers.ToImmutableDictionary();

            CardinalExtractor = Number.Spanish.CardinalExtractor.GetInstance();
            IntegerExtractor  = new IntegerExtractor();
            OrdinalExtractor  = new OrdinalExtractor();

            NumberParser            = new BaseNumberParser(new SpanishNumberParserConfiguration());
            DateExtractor           = new BaseDateExtractor(new SpanishDateExtractorConfiguration());
            TimeExtractor           = new BaseTimeExtractor(new SpanishTimeExtractorConfiguration());
            DateTimeExtractor       = new BaseDateTimeExtractor(new SpanishDateTimeExtractorConfiguration());
            DurationExtractor       = new BaseDurationExtractor(new SpanishDurationExtractorConfiguration());
            DatePeriodExtractor     = new BaseDatePeriodExtractor(new SpanishDatePeriodExtractorConfiguration());
            TimePeriodExtractor     = new BaseTimePeriodExtractor(new SpanishTimePeriodExtractorConfiguration());
            DateTimePeriodExtractor = new BaseDateTimePeriodExtractor(new SpanishDateTimePeriodExtractorConfiguration());
            DateParser           = new BaseDateParser(new SpanishDateParserConfiguration(this));
            TimeParser           = new BaseTimeParser(new SpanishTimeParserConfiguration(this));
            DateTimeParser       = new BaseDateTimeParser(new SpanishDateTimeParserConfiguration(this));
            DurationParser       = new BaseDurationParser(new SpanishDurationParserConfiguration(this));
            DatePeriodParser     = new BaseDatePeriodParser(new SpanishDatePeriodParserConfiguration(this));
            TimePeriodParser     = new BaseTimePeriodParser(new SpanishTimePeriodParserConfiguration(this));
            DateTimePeriodParser = new BaseDateTimePeriodParser(new SpanishDateTimePeriodParserConfiguration(this));
        }
 public SpanishTimePeriodExtractorConfiguration(IOptionsConfiguration config) : base(config)
 {
     TokenBeforeDate      = DateTimeDefinitions.TokenBeforeDate;
     SingleTimeExtractor  = new BaseTimeExtractor(new SpanishTimeExtractorConfiguration(this));
     UtilityConfiguration = new SpanishDatetimeUtilityConfiguration();
     IntegerExtractor     = Number.English.IntegerExtractor.GetInstance();
 }
コード例 #4
0
 public SpanishCommonDateTimeParserConfiguration()
 {
     UnitMap                 = InitUnitMap();
     UnitValueMap            = InitUnitValueMap();
     SeasonMap               = InitSeasonMap();
     CardinalMap             = InitCardinalMap();
     DayOfWeek               = InitDayOfWeek();
     MonthOfYear             = InitMonthOfYear();
     Numbers                 = InitNumbers();
     DoubleNumbers           = InitDoubleNumbers();
     CardinalExtractor       = new CardinalExtractor();
     IntegerExtractor        = new IntegerExtractor();
     OrdinalExtractor        = new OrdinalExtractor();
     NumberParser            = new BaseNumberParser(new SpanishNumberParserConfiguration());
     DateExtractor           = new BaseDateExtractor(new SpanishDateExtractorConfiguration());
     TimeExtractor           = new BaseTimeExtractor(new SpanishTimeExtractorConfiguration());
     DateTimeExtractor       = new BaseDateTimeExtractor(new SpanishDateTimeExtractorConfiguration());
     DurationExtractor       = new BaseDurationExtractor(new SpanishDurationExtractorConfiguration());
     DatePeriodExtractor     = new BaseDatePeriodExtractor(new SpanishDatePeriodExtractorConfiguration());
     TimePeriodExtractor     = new BaseTimePeriodExtractor(new SpanishTimePeriodExtractorConfiguration());
     DateTimePeriodExtractor = new BaseDateTimePeriodExtractor(new SpanishDateTimePeriodExtractorConfiguration());
     DateParser              = new BaseDateParser(new SpanishDateParserConfiguration(this));
     TimeParser              = new BaseTimeParser(new SpanishTimeParserConfiguration(this));
     DateTimeParser          = new BaseDateTimeParser(new SpanishDateTimeParserConfiguration(this));
     DurationParser          = new BaseDurationParser(new SpanishDurationParserConfiguration(this));
     UtilityConfiguration    = new SpanishDatetimeUtilityConfiguration();
     DatePeriodParser        = new BaseDatePeriodParser(new SpanishDatePeriodParserConfiguration(this));
     TimePeriodParser        = new BaseTimePeriodParser(new SpanishTimePeriodParserConfiguration(this));
     DateTimePeriodParser    = new BaseDateTimePeriodParser(new SpanishDateTimePeriodParserConfiguration(this));
 }
コード例 #5
0
        public SpanishDateExtractorConfiguration(IDateTimeOptionsConfiguration config)
            : base(config)
        {
            var numOptions = NumberOptions.None;

            if ((config.Options & DateTimeOptions.NoProtoCache) != 0)
            {
                numOptions = NumberOptions.NoProtoCache;
            }

            var numConfig = new BaseNumberOptionsConfiguration(config.Culture, numOptions);

            IntegerExtractor = Number.Spanish.IntegerExtractor.GetInstance(numConfig);
            OrdinalExtractor = Number.Spanish.OrdinalExtractor.GetInstance(numConfig);
            NumberParser     = new BaseNumberParser(new SpanishNumberParserConfiguration(numConfig));

            DurationExtractor    = new BaseDurationExtractor(new SpanishDurationExtractorConfiguration(this));
            HolidayExtractor     = new BaseHolidayExtractor(new SpanishHolidayExtractorConfiguration(this));
            UtilityConfiguration = new SpanishDatetimeUtilityConfiguration();

            // 3-23-2017
            var dateRegex4 = new Regex(DateTimeDefinitions.DateExtractor4, RegexFlags);

            // 23-3-2015
            var dateRegex5 = new Regex(DateTimeDefinitions.DateExtractor5, RegexFlags);

            // el 1.3
            var dateRegex6 = new Regex(DateTimeDefinitions.DateExtractor6, RegexFlags);

            // el 24-12
            var dateRegex8 = new Regex(DateTimeDefinitions.DateExtractor8, RegexFlags);

            // 7/23
            var dateRegex7 = new Regex(DateTimeDefinitions.DateExtractor7, RegexFlags);

            // 23/7
            var dateRegex9 = new Regex(DateTimeDefinitions.DateExtractor9, RegexFlags);

            // 2015-12-23
            var dateRegex10 = new Regex(DateTimeDefinitions.DateExtractor10, RegexFlags);

            DateRegexList = new List <Regex>
            {
                // (domingo,)? 5 de Abril
                new Regex(DateTimeDefinitions.DateExtractor1, RegexFlags),

                // (domingo,)? 5 de Abril 5, 2016
                new Regex(DateTimeDefinitions.DateExtractor2, RegexFlags),

                // (domingo,)? 6 de Abril
                new Regex(DateTimeDefinitions.DateExtractor3, RegexFlags),
            };

            var enableDmy = DmyDateFormat ||
                            DateTimeDefinitions.DefaultLanguageFallback == Constants.DefaultLanguageFallback_DMY;

            DateRegexList = DateRegexList.Concat(enableDmy
                ? new[] { dateRegex5, dateRegex8, dateRegex9, dateRegex4, dateRegex6, dateRegex7, dateRegex10 }
                : new[] { dateRegex4, dateRegex6, dateRegex7, dateRegex5, dateRegex8, dateRegex9, dateRegex10 });
        }
コード例 #6
0
 public SpanishDateExtractorConfiguration() : base(DateTimeOptions.None)
 {
     IntegerExtractor     = new IntegerExtractor();
     OrdinalExtractor     = new OrdinalExtractor();
     NumberParser         = new BaseNumberParser(new SpanishNumberParserConfiguration());
     DurationExtractor    = new BaseDurationExtractor(new SpanishDurationExtractorConfiguration());
     UtilityConfiguration = new SpanishDatetimeUtilityConfiguration();
 }
コード例 #7
0
 public SpanishDateTimeExtractorConfiguration(IOptionsConfiguration config) : base(config)
 {
     IntegerExtractor     = Number.Spanish.IntegerExtractor.GetInstance();
     DatePointExtractor   = new BaseDateExtractor(new SpanishDateExtractorConfiguration(this));
     TimePointExtractor   = new BaseTimeExtractor(new SpanishTimeExtractorConfiguration(this));
     DurationExtractor    = new BaseDurationExtractor(new SpanishDurationExtractorConfiguration(this));
     UtilityConfiguration = new SpanishDatetimeUtilityConfiguration();
 }
 public SpanishDateTimeExtractorConfiguration(DateTimeOptions options = DateTimeOptions.None) : base(options)
 {
     IntegerExtractor     = new IntegerExtractor();
     DatePointExtractor   = new BaseDateExtractor(new SpanishDateExtractorConfiguration());
     TimePointExtractor   = new BaseTimeExtractor(new SpanishTimeExtractorConfiguration());
     DurationExtractor    = new BaseDurationExtractor(new SpanishDurationExtractorConfiguration());
     UtilityConfiguration = new SpanishDatetimeUtilityConfiguration();
 }
コード例 #9
0
        public SpanishDateExtractorConfiguration(IOptionsConfiguration config)
            : base(config)
        {
            IntegerExtractor     = Number.Spanish.IntegerExtractor.GetInstance();
            OrdinalExtractor     = Number.Spanish.OrdinalExtractor.GetInstance();
            NumberParser         = new BaseNumberParser(new SpanishNumberParserConfiguration());
            DurationExtractor    = new BaseDurationExtractor(new SpanishDurationExtractorConfiguration(this));
            UtilityConfiguration = new SpanishDatetimeUtilityConfiguration();

            const RegexOptions dateRegexOption = RegexOptions.Singleline;

            // 3-23-2017
            var dateRegex4 = new Regex(DateTimeDefinitions.DateExtractor4, dateRegexOption);

            // 23-3-2015
            var dateRegex5 = new Regex(DateTimeDefinitions.DateExtractor5, dateRegexOption);

            // el 1.3
            var dateRegex6 = new Regex(DateTimeDefinitions.DateExtractor6, dateRegexOption);

            // el 24-12
            var dateRegex8 = new Regex(DateTimeDefinitions.DateExtractor8, dateRegexOption);

            // 7/23
            var dateRegex7 = new Regex(DateTimeDefinitions.DateExtractor7, dateRegexOption);

            // 23/7
            var dateRegex9 = new Regex(DateTimeDefinitions.DateExtractor9, dateRegexOption);

            // 2015-12-23
            var dateRegex10 = new Regex(DateTimeDefinitions.DateExtractor10, dateRegexOption);

            DateRegexList = new List <Regex>
            {
                // (domingo,)? 5 de Abril
                new Regex(DateTimeDefinitions.DateExtractor1, dateRegexOption),

                // (domingo,)? 5 de Abril 5, 2016
                new Regex(DateTimeDefinitions.DateExtractor2, dateRegexOption),

                // (domingo,)? 6 de Abril
                new Regex(DateTimeDefinitions.DateExtractor3, dateRegexOption),
            };

            var enableDmy = DmyDateFormat ||
                            DateTimeDefinitions.DefaultLanguageFallback == Constants.DefaultLanguageFallback_DMY;

            DateRegexList = DateRegexList.Concat(enableDmy
                ? new[] { dateRegex5, dateRegex8, dateRegex9, dateRegex4, dateRegex6, dateRegex7, dateRegex10 }
                : new[] { dateRegex4, dateRegex6, dateRegex7, dateRegex5, dateRegex8, dateRegex9, dateRegex10 });
        }
        public SpanishCommonDateTimeParserConfiguration(IDateTimeOptionsConfiguration config)
            : base(config)
        {
            UtilityConfiguration = new SpanishDatetimeUtilityConfiguration();

            UnitMap                = DateTimeDefinitions.UnitMap.ToImmutableDictionary();
            UnitValueMap           = DateTimeDefinitions.UnitValueMap.ToImmutableDictionary();
            SeasonMap              = DateTimeDefinitions.SeasonMap.ToImmutableDictionary();
            SpecialYearPrefixesMap = DateTimeDefinitions.SpecialYearPrefixesMap.ToImmutableDictionary();
            CardinalMap            = DateTimeDefinitions.CardinalMap.ToImmutableDictionary();
            DayOfWeek              = DateTimeDefinitions.DayOfWeek.ToImmutableDictionary();
            MonthOfYear            = DateTimeDefinitions.MonthOfYear.ToImmutableDictionary();
            Numbers                = DateTimeDefinitions.Numbers.ToImmutableDictionary();
            DoubleNumbers          = DateTimeDefinitions.DoubleNumbers.ToImmutableDictionary();
            WrittenDecades         = DateTimeDefinitions.WrittenDecades.ToImmutableDictionary();
            SpecialDecadeCases     = DateTimeDefinitions.SpecialDecadeCases.ToImmutableDictionary();

            var numOptions = NumberOptions.None;

            if ((config.Options & DateTimeOptions.NoProtoCache) != 0)
            {
                numOptions = NumberOptions.NoProtoCache;
            }

            var numConfig = new BaseNumberOptionsConfiguration(config.Culture, numOptions);

            CardinalExtractor = Number.Spanish.CardinalExtractor.GetInstance(numConfig);
            IntegerExtractor  = Number.Spanish.IntegerExtractor.GetInstance(numConfig);
            OrdinalExtractor  = Number.Spanish.OrdinalExtractor.GetInstance(numConfig);

            NumberParser = new BaseNumberParser(new SpanishNumberParserConfiguration(numConfig));

            // Do not change order. The order of initialization can lead to side-effects
            DateExtractor           = new BaseDateExtractor(new SpanishDateExtractorConfiguration(this));
            TimeExtractor           = new BaseTimeExtractor(new SpanishTimeExtractorConfiguration(this));
            DateTimeExtractor       = new BaseDateTimeExtractor(new SpanishDateTimeExtractorConfiguration(this));
            DurationExtractor       = new BaseDurationExtractor(new SpanishDurationExtractorConfiguration(this));
            DatePeriodExtractor     = new BaseDatePeriodExtractor(new SpanishDatePeriodExtractorConfiguration(this));
            TimePeriodExtractor     = new BaseTimePeriodExtractor(new SpanishTimePeriodExtractorConfiguration(this));
            DateTimePeriodExtractor = new BaseDateTimePeriodExtractor(new SpanishDateTimePeriodExtractorConfiguration(this));

            DurationParser       = new BaseDurationParser(new SpanishDurationParserConfiguration(this));
            DateParser           = new BaseDateParser(new SpanishDateParserConfiguration(this));
            TimeParser           = new BaseTimeParser(new SpanishTimeParserConfiguration(this));
            DateTimeParser       = new BaseDateTimeParser(new SpanishDateTimeParserConfiguration(this));
            DatePeriodParser     = new BaseDatePeriodParser(new SpanishDatePeriodParserConfiguration(this));
            TimePeriodParser     = new BaseTimePeriodParser(new SpanishTimePeriodParserConfiguration(this));
            DateTimePeriodParser = new BaseDateTimePeriodParser(new SpanishDateTimePeriodParserConfiguration(this));

            DateTimeAltParser = new BaseDateTimeAltParser(new SpanishDateTimeAltParserConfiguration(this));
        }
コード例 #11
0
        public SpanishDateTimeExtractorConfiguration(IDateTimeOptionsConfiguration config)
            : base(config)
        {
            var numOptions = NumberOptions.None;

            if ((config.Options & DateTimeOptions.NoProtoCache) != 0)
            {
                numOptions = NumberOptions.NoProtoCache;
            }

            var numConfig = new BaseNumberOptionsConfiguration(config.Culture, numOptions);

            IntegerExtractor = Number.Spanish.IntegerExtractor.GetInstance(numConfig);

            DatePointExtractor   = new BaseDateExtractor(new SpanishDateExtractorConfiguration(this));
            TimePointExtractor   = new BaseTimeExtractor(new SpanishTimeExtractorConfiguration(this));
            DurationExtractor    = new BaseDurationExtractor(new SpanishDurationExtractorConfiguration(this));
            UtilityConfiguration = new SpanishDatetimeUtilityConfiguration();
        }
        public SpanishTimePeriodExtractorConfiguration(IDateTimeOptionsConfiguration config)
            : base(config)
        {
            TokenBeforeDate      = DateTimeDefinitions.TokenBeforeDate;
            SingleTimeExtractor  = new BaseTimeExtractor(new SpanishTimeExtractorConfiguration(this));
            UtilityConfiguration = new SpanishDatetimeUtilityConfiguration();

            var numOptions = NumberOptions.None;

            if ((config.Options & DateTimeOptions.NoProtoCache) != 0)
            {
                numOptions = NumberOptions.NoProtoCache;
            }

            var numConfig = new BaseNumberOptionsConfiguration(config.Culture, numOptions);

            IntegerExtractor = Number.English.IntegerExtractor.GetInstance(numConfig);

            TimeZoneExtractor = new BaseTimeZoneExtractor(new SpanishTimeZoneExtractorConfiguration(this));
        }
コード例 #13
0
        public SpanishCommonDateTimeParserConfiguration(IDateTimeOptionsConfiguration config)
            : base(config)
        {
            UtilityConfiguration = new SpanishDatetimeUtilityConfiguration();

            UnitMap                = DateTimeDefinitions.UnitMap.ToImmutableDictionary();
            UnitValueMap           = DateTimeDefinitions.UnitValueMap.ToImmutableDictionary();
            SeasonMap              = DateTimeDefinitions.SeasonMap.ToImmutableDictionary();
            SpecialYearPrefixesMap = DateTimeDefinitions.SpecialYearPrefixesMap.ToImmutableDictionary();
            CardinalMap            = DateTimeDefinitions.CardinalMap.ToImmutableDictionary();
            DayOfWeek              = DateTimeDefinitions.DayOfWeek.ToImmutableDictionary();
            MonthOfYear            = DateTimeDefinitions.MonthOfYear.ToImmutableDictionary();
            Numbers                = DateTimeDefinitions.Numbers.ToImmutableDictionary();
            DoubleNumbers          = DateTimeDefinitions.DoubleNumbers.ToImmutableDictionary();
            WrittenDecades         = DateTimeDefinitions.WrittenDecades.ToImmutableDictionary();
            SpecialDecadeCases     = DateTimeDefinitions.SpecialDecadeCases.ToImmutableDictionary();

            CardinalExtractor = Number.Spanish.CardinalExtractor.GetInstance();
            IntegerExtractor  = Number.Spanish.IntegerExtractor.GetInstance();
            OrdinalExtractor  = Number.Spanish.OrdinalExtractor.GetInstance();

            NumberParser            = new BaseNumberParser(new SpanishNumberParserConfiguration(new BaseNumberOptionsConfiguration(config.Culture)));
            DateExtractor           = new BaseDateExtractor(new SpanishDateExtractorConfiguration(this));
            TimeExtractor           = new BaseTimeExtractor(new SpanishTimeExtractorConfiguration(this));
            DateTimeExtractor       = new BaseDateTimeExtractor(new SpanishDateTimeExtractorConfiguration(this));
            DurationExtractor       = new BaseDurationExtractor(new SpanishDurationExtractorConfiguration(this));
            DatePeriodExtractor     = new BaseDatePeriodExtractor(new SpanishDatePeriodExtractorConfiguration(this));
            TimePeriodExtractor     = new BaseTimePeriodExtractor(new SpanishTimePeriodExtractorConfiguration(this));
            DateTimePeriodExtractor = new BaseDateTimePeriodExtractor(new SpanishDateTimePeriodExtractorConfiguration(this));
            DateParser           = new BaseDateParser(new SpanishDateParserConfiguration(this));
            TimeParser           = new BaseTimeParser(new SpanishTimeParserConfiguration(this));
            DateTimeParser       = new BaseDateTimeParser(new SpanishDateTimeParserConfiguration(this));
            DurationParser       = new BaseDurationParser(new SpanishDurationParserConfiguration(this));
            DatePeriodParser     = new BaseDatePeriodParser(new SpanishDatePeriodParserConfiguration(this));
            TimePeriodParser     = new BaseTimePeriodParser(new SpanishTimePeriodParserConfiguration(this));
            DateTimePeriodParser = new BaseDateTimePeriodParser(new SpanishDateTimePeriodParserConfiguration(this));
            DateTimeAltParser    = new BaseDateTimeAltParser(new SpanishDateTimeAltParserConfiguration(this));
        }
 public SpanishTimePeriodExtractorConfiguration()
 {
     SingleTimeExtractor  = new BaseTimeExtractor(new SpanishTimeExtractorConfiguration());
     UtilityConfiguration = new SpanishDatetimeUtilityConfiguration();
     IntegerExtractor     = Number.English.IntegerExtractor.GetInstance();
 }
コード例 #15
0
 public SpanishTimePeriodExtractorConfiguration()
 {
     SingleTimeExtractor  = new BaseTimeExtractor(new SpanishTimeExtractorConfiguration());
     UtilityConfiguration = new SpanishDatetimeUtilityConfiguration();
 }