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); } }
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); } } }
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); } }
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); } } }