Пример #1
0
 private static void expand2DigitNumber(string text, WordRelation wordRelation)
 {
     if (String.instancehelper_charAt(text, 0) == '0')
     {
         if (String.instancehelper_charAt(text, 1) != '0')
         {
             string word = NumberExpander.digit2num[(int)(String.instancehelper_charAt(text, 1) - '0')];
             wordRelation.addWord(word);
         }
     }
     else if (String.instancehelper_charAt(text, 1) == '0')
     {
         string word = NumberExpander.digit2enty[(int)(String.instancehelper_charAt(text, 0) - '0')];
         wordRelation.addWord(word);
     }
     else if (String.instancehelper_charAt(text, 0) == '1')
     {
         string word = NumberExpander.digit2teen[(int)(String.instancehelper_charAt(text, 1) - '0')];
         wordRelation.addWord(word);
     }
     else
     {
         string word = NumberExpander.digit2enty[(int)(String.instancehelper_charAt(text, 0) - '0')];
         wordRelation.addWord(word);
         NumberExpander.expandDigits(String.instancehelper_substring(text, 1, String.instancehelper_length(text)), wordRelation);
     }
 }
Пример #2
0
        public static void expandID(string numberString, WordRelation wordRelation)
        {
            int num = String.instancehelper_length(numberString);

            if (num == 4 && String.instancehelper_charAt(numberString, 2) == '0' && String.instancehelper_charAt(numberString, 3) == '0')
            {
                if (String.instancehelper_charAt(numberString, 1) == '0')
                {
                    NumberExpander.expandNumber(numberString, wordRelation);
                }
                else
                {
                    NumberExpander.expandNumber(String.instancehelper_substring(numberString, 0, 2), wordRelation);
                    wordRelation.addWord("hundred");
                }
            }
            else if (num == 2 && String.instancehelper_charAt(numberString, 0) == '0')
            {
                wordRelation.addWord("oh");
                NumberExpander.expandDigits(String.instancehelper_substring(numberString, 1, 2), wordRelation);
            }
            else if ((num == 4 && String.instancehelper_charAt(numberString, 1) == '0') || num < 3)
            {
                NumberExpander.expandNumber(numberString, wordRelation);
            }
            else
            {
                int num2 = num;
                int num3 = 2;
                if (((num3 != -1) ? (num2 % num3) : 0) == 1)
                {
                    string word = NumberExpander.digit2num[(int)(String.instancehelper_charAt(numberString, 0) - '0')];
                    wordRelation.addWord(word);
                    NumberExpander.expandID(String.instancehelper_substring(numberString, 1, num), wordRelation);
                }
                else
                {
                    NumberExpander.expandNumber(String.instancehelper_substring(numberString, 0, 2), wordRelation);
                    NumberExpander.expandID(String.instancehelper_substring(numberString, 2, num), wordRelation);
                }
            }
        }
Пример #3
0
        public static void expandReal(string numberString, WordRelation wordRelation)
        {
            int num = String.instancehelper_length(numberString);
            int num2;

            if (String.instancehelper_charAt(numberString, 0) == '-')
            {
                wordRelation.addWord("minus");
                NumberExpander.expandReal(String.instancehelper_substring(numberString, 1, num), wordRelation);
            }
            else if (String.instancehelper_charAt(numberString, 0) == '+')
            {
                wordRelation.addWord("plus");
                NumberExpander.expandReal(String.instancehelper_substring(numberString, 1, num), wordRelation);
            }
            else if ((num2 = String.instancehelper_indexOf(numberString, 101)) != -1 || (num2 = String.instancehelper_indexOf(numberString, 69)) != -1)
            {
                NumberExpander.expandReal(String.instancehelper_substring(numberString, 0, num2), wordRelation);
                wordRelation.addWord("e");
                NumberExpander.expandReal(String.instancehelper_substring(numberString, num2 + 1), wordRelation);
            }
            else if ((num2 = String.instancehelper_indexOf(numberString, 46)) != -1)
            {
                string text = String.instancehelper_substring(numberString, 0, num2);
                if (String.instancehelper_length(text) > 0)
                {
                    NumberExpander.expandReal(text, wordRelation);
                }
                wordRelation.addWord("point");
                string text2 = String.instancehelper_substring(numberString, num2 + 1);
                if (String.instancehelper_length(text2) > 0)
                {
                    NumberExpander.expandDigits(text2, wordRelation);
                }
            }
            else
            {
                NumberExpander.expandNumber(numberString, wordRelation);
            }
        }
Пример #4
0
        public static void expandNumber(string numberString, WordRelation wordRelation)
        {
            int num = String.instancehelper_length(numberString);

            if (num != 0)
            {
                if (num == 1)
                {
                    NumberExpander.expandDigits(numberString, wordRelation);
                }
                else if (num == 2)
                {
                    NumberExpander.expand2DigitNumber(numberString, wordRelation);
                }
                else if (num == 3)
                {
                    NumberExpander.expand3DigitNumber(numberString, wordRelation);
                }
                else if (num < 7)
                {
                    NumberExpander.expandBelow7DigitNumber(numberString, wordRelation);
                }
                else if (num < 10)
                {
                    NumberExpander.expandBelow10DigitNumber(numberString, wordRelation);
                }
                else if (num < 13)
                {
                    NumberExpander.expandBelow13DigitNumber(numberString, wordRelation);
                }
                else
                {
                    NumberExpander.expandDigits(numberString, wordRelation);
                }
            }
        }