Exemplo n.º 1
0
 public override bool Equals(Object obj)
 {
     if ((obj == null) || !this.GetType().Equals(obj.GetType()))
     {
         return(false);
     }
     else
     {
         DateResult dr = (DateResult)obj;
         return(OriginalValue.Equals(dr.OriginalValue) &&
                StartIndex == dr.StartIndex &&
                EndIndex == dr.EndIndex);
     }
 }
Exemplo n.º 2
0
        private DateResult CreateDateResult(Match match, string format, int distance, List <string> valueToDetec)
        {
            DateResult dateResult = new DateResult();

            dateResult.Status        = distance > 0 ? Status.Error : Status.OK;
            dateResult.OriginalValue = match.Value.Substring(1, (match.Value.Length - 2));
            DateIdentificator     dateIdentificator      = new DateIdentificator(_months, _outputFormat);
            Tuple <string, float> supposedValue_accuracy = dateIdentificator.GetSupposedValue(valueToDetec);

            dateResult.SupposedValue = supposedValue_accuracy.Item1;
            dateResult.Accuracy      = supposedValue_accuracy.Item2;
            dateResult.StartIndex    = match.Index + 1;
            dateResult.EndIndex      = match.Index + match.Length - 2;
            dateResult.Format.Add(format, distance);

            return(dateResult);
        }
Exemplo n.º 3
0
        private List <DateResult> GetDateResults(List <DateResult> dateResults, string stringRegEx, IEnumerable <string> formats)
        {
            Regex           regex           = new Regex(@stringRegEx);
            MatchCollection matchCollection = regex.Matches(_stringToScan);

            foreach (Match match in matchCollection)
            {
                foreach (string format in formats)
                {
                    DateResult dateResult = GetDateResultFromWordFormats(match, format);
                    if (dateResult != null)
                    {
                        dateResults = ExtendDateResults(dateResults, dateResult);
                    }
                }
            }
            return(dateResults);
        }
Exemplo n.º 4
0
 private List <DateResult> ExtendDateResults(List <DateResult> dateResults, DateResult dateResult)
 {
     if (dateResults.Contains(dateResult))
     {
         DateResult primaryDt = dateResults.Find(obj => obj.Equals(dateResult));
         foreach (KeyValuePair <string, int> kvp in dateResult.Format)
         {
             if (kvp.Value == 0)
             {
                 primaryDt.Status = Status.OK;
             }
             if (!primaryDt.Format.ContainsKey(kvp.Key))
             {
                 primaryDt.Format.Add(kvp.Key, kvp.Value);
             }
         }
     }
     else
     {
         dateResults.Add(dateResult);
     }
     return(dateResults);
 }