示例#1
0
        public void Test_ExtractDelimiter()
        {
            string res;

            res = GEDCOMUtils.ExtractDelimiter(" 12345 efgh", 0);
            Assert.AreEqual("12345 efgh", res);

            res = GEDCOMUtils.ExtractDelimiter("    abrvalg", 2);
            Assert.AreEqual("  abrvalg", res);
        }
示例#2
0
        public override string ParseString(string strValue)
        {
            // Format: AFT DATE, BEF DATE, BET AFT_DATE AND BEF_DATE

            fDateAfter.Clear();
            fDateBefore.Clear();

            string result = strValue;

            if (!string.IsNullOrEmpty(result))
            {
                string su = result.Substring(0, 3).ToUpperInvariant();

                if (su == GEDCOMDateRangeArray[0])
                {
                    result = result.Remove(0, 3);
                    result = GEDCOMUtils.ExtractDelimiter(result, 0);
                    result = fDateAfter.ParseString(result);
                }
                else if (su == GEDCOMDateRangeArray[1])
                {
                    result = result.Remove(0, 3);
                    result = GEDCOMUtils.ExtractDelimiter(result, 0);
                    result = fDateBefore.ParseString(result);
                }
                else if (su == GEDCOMDateRangeArray[2])
                {
                    result = result.Remove(0, 3);
                    result = GEDCOMUtils.ExtractDelimiter(result, 0);
                    result = GEDCOMProvider.FixFTB(result);
                    result = fDateAfter.ParseString(result);
                    result = GEDCOMUtils.ExtractDelimiter(result, 0);

                    su = result.Substring(0, 3).ToUpper();

                    if (su == GEDCOMDateRangeArray[3])
                    {
                        result = result.Remove(0, 3);
                        result = GEDCOMUtils.ExtractDelimiter(result, 0);
                        result = GEDCOMProvider.FixFTB(result);
                        result = fDateBefore.ParseString(result);
                    }
                }
            }
            return(result);
        }
        public override string ParseString(string strValue)
        {
            fStringValue = "";
            XRef         = "";
            string result = strValue;

            if (!string.IsNullOrEmpty(result))
            {
                result = GEDCOMUtils.ExtractDelimiter(result, 0);
                result = base.ParseString(result);
                if (!IsPointer)
                {
                    fStringValue = result;
                    result       = "";
                }
            }
            return(result);
        }
示例#4
0
        public override string ParseString(string strValue)
        {
            // Format: FROM DATE1 TO DATE2

            string result = strValue;

            if (!string.IsNullOrEmpty(result))
            {
                if (result.StartsWith("FROM"))
                {
                    result = result.Remove(0, 4);
                    result = GEDCOMUtils.ExtractDelimiter(result, 0);
                    result = fDateFrom.ParseString(result);
                    result = GEDCOMUtils.ExtractDelimiter(result, 0);
                }
                if (result.StartsWith("TO"))
                {
                    result = result.Remove(0, 2);
                    result = GEDCOMUtils.ExtractDelimiter(result, 0);
                    result = fDateTo.ParseString(result);
                }
            }
            return(result);
        }