Example #1
0
        public static string GetRandomString(int length, CharMode charMode)
        {
            string result = String.Empty;
            string chars  = "";

            switch (charMode)
            {
            case CharMode.Small:
                chars = SmallChars;
                break;

            case CharMode.LoremIpsum:
                chars = LoremIpsumChars;
                break;

            case CharMode.Number:
                chars = Numbers;
                break;

            case CharMode.SmallAndNumbers:
                chars = SmallCharsAndNumbers;
                break;

            default:
                chars = AllChars;
                break;
            }
            return(GetRandomString(length, chars));
        }
Example #2
0
        public static char[] IntToChars(this int value, CharMode charMode = CharMode.Character)
        {
            char[] charValue = value.ToString().ToCharArray();
            switch (charMode)
            {
            case CharMode.Number:
                for (int i = 0; i < charValue.Length; i++)
                {
                    charValue[i] -= '0';
                }
                return(charValue);

            case CharMode.Character:
            default:
                return(charValue);
            }
        }
Example #3
0
        public static int CharsToInt(this char[] value, CharMode charMode = CharMode.Character)
        {
            int intValue = 0;

            value = value.RemoveWhiteSpaces();
            for (int i = 0; i < value.Length; i++)
            {
                intValue *= 10;
                intValue += value[i];
                switch (charMode)
                {
                case CharMode.Number:
                    break;

                case CharMode.Character:
                    intValue -= '0';
                    break;
                }
            }
            return(intValue);
        }
Example #4
0
        public static List <string> GetRandomListString(int minListLength, int maxListLength, int maxStringLength, CharMode charMode)
        {
            List <string> list      = new List <string>();
            int           wordCount = GetRandomInt(minListLength, maxListLength);

            for (int i = 0; i < wordCount; i++)
            {
                list.Add(GetRandomString(maxStringLength, charMode));
            }
            return(list);
        }
Example #5
0
 public static string GetRandomPharagraph(int minWords, int maxWords, CharMode charMode)
 {
     return(GetRandomPharagraph(minWords, maxWords, 3, 15, charMode));
 }
Example #6
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="minWords">Paragrafın en az kaç kelime olacağı</param>
        /// <param name="maxWords">Paragrafın en fazla kaç kelime olacağı</param>
        /// <param name="minWordLen">Paragraftaki kelimelerin en az kaç harf olacağı</param>
        /// <param name="maxWordLen">Paragraftaki kelimelerin en fazla kaç harf olacağı</param>
        /// <param name="charMode"></param>
        /// <returns></returns>
        public static string GetRandomPharagraph(int minWords, int maxWords, int minWordLen, int maxWordLen, CharMode charMode)
        {
            string text      = "";
            int    wordCount = GetRandomInt(minWords, maxWords);

            for (int i = 0; i < wordCount; i++)
            {
                text += GetRandomString(GetRandomInt(minWordLen, maxWordLen), charMode);
                if (i < wordCount - 1)
                {
                    text += " ";
                }
            }
            return(text);
        }
Example #7
0
 /// <summary>
 /// saniyeye kadar date string + len kadar random string
 /// </summary>
 /// <param name="lenAfterDatePrefix"></param>
 /// <param name="charMode"></param>
 /// <returns></returns>
 public static string GetRandomStringWithDatePrefixWithSeconds(int lenAfterDatePrefix, CharMode charMode)
 {
     return(GetDateStringWithSeconds() + GetRandomString(lenAfterDatePrefix, charMode));
 }
Example #8
0
 public static string GetRandomString(int min, int max, CharMode charMode)
 {
     return(GetRandomString(GetRandomInt(min, max), charMode));
 }
Example #9
0
        /// <summary>
        /// read next and analyze char group
        /// </summary>
        /// <param name="c"></param>
        /// <param name="charMode"></param>
        /// <returns></returns>
        public bool ReadNext(out char c, out CharMode charMode)
        {
            //1. move 

            if (index < totalLength)
            {
                c = buffer[++index];
                switch (c)
                {
                    case '\n':

                        //reset 
                        charMode = CharMode.NewLine;
                        this.lineNumber++;
                        this.columnNumber = 1;//reset
                        return true;
                    case '\t':
                    case ' ':
                    case '\r':
                    case '\f':
                        this.columnNumber++;
                        charMode = CharMode.WhiteSpace;
                        return true;
                    case '!':
                        columnNumber++;
                        charMode = CharMode.Bang;
                        return true;
                    case '/':
                        columnNumber++;
                        charMode = CharMode.Slash;
                        return true;
                    case '?':
                        columnNumber++;
                        charMode = CharMode.Quest;
                        return true;
                    case '#':
                        columnNumber++;
                        charMode = CharMode.Sharp;
                        return true;
                    case '&':
                        columnNumber++;
                        charMode = CharMode.Ampersand;
                        return true;
                    case '"':
                        columnNumber++;
                        charMode = CharMode.DoubleQuote;
                        return true;
                    case '\'':
                        columnNumber++;
                        charMode = CharMode.Quote;
                        return true;
                    case '=':
                        columnNumber++;
                        charMode = CharMode.Assign;
                        return true;
                    case '>':
                        columnNumber++;
                        charMode = CharMode.Gt;
                        return true;
                    case '<':
                        columnNumber++;
                        charMode = CharMode.Lt;
                        return true;
                    case 'a':
                    case 'b':
                    case 'c':
                    case 'd':
                    case 'e':
                    case 'f':
                    case 'g':
                    case 'h':
                    case 'i':
                    case 'j':
                    case 'k':
                    case 'l':
                    case 'm':
                    case 'n':
                    case 'o':
                    case 'p':
                    case 'q':
                    case 'r':
                    case 's':
                    case 't':
                    case 'u':
                    case 'v':
                    case 'w':
                    case 'x':
                    case 'y':
                    case 'z':
                        charMode = CharMode.LowerAsciiLetter;
                        columnNumber++;
                        return true;
                    case 'A':
                    case 'B':
                    case 'C':
                    case 'D':
                    case 'E':
                    case 'F':
                    case 'G':
                    case 'H':
                    case 'I':
                    case 'J':
                    case 'K':
                    case 'L':
                    case 'M':
                    case 'N':
                    case 'O':
                    case 'P':
                    case 'Q':
                    case 'R':
                    case 'S':
                    case 'T':
                    case 'U':
                    case 'V':
                    case 'W':
                    case 'X':
                    case 'Y':
                    case 'Z':
                        charMode = CharMode.UpperAsciiLetter;
                        columnNumber++;
                        return true;
                    case '0':
                    case '1':
                    case '2':
                    case '3':
                    case '4':
                    case '5':
                    case '6':
                    case '7':
                    case '8':
                    case '9':
                        charMode = CharMode.Numeric;
                        columnNumber++;
                        return true;
                    default:
                        charMode = CharMode.Others;
                        columnNumber++;
                        return true;
                }
            }
            else
            {
                c = '\0';
                charMode = CharMode.Others;
                return false;
            }
        }
Example #10
0
        /// <summary>
        /// read next and analyze char group
        /// </summary>
        /// <param name="c"></param>
        /// <param name="charMode"></param>
        /// <returns></returns>
        bool ReadNext(out char c, out CharMode charMode)
        {
            int nc;
            if ((nc = text.Read()) == -1)
            {
                c = '\0';
                charMode = CharMode.Eof;
                return false;
            }

            c = (char)nc;
            switch (c)
            {
                case '\n':
                    LinePosition = 1;
                    LineNumber++;
                    charMode = CharMode.NewLine;
                    return true;
                case '\t':
                case ' ':
                case '\r':
                case '\f':
                    LinePosition++;
                    charMode = CharMode.WhiteSpace;
                    return true;
                case '!':
                    LinePosition++;
                    charMode = CharMode.Bang;
                    return true;
                case '/':
                    LinePosition++;
                    charMode = CharMode.Slash;
                    return true;
                case '?':
                    LinePosition++;
                    charMode = CharMode.Quest;
                    return true;
                case '=':
                    LinePosition++;
                    charMode = CharMode.Assign;
                    return true;
                case '>':
                    LinePosition++;
                    charMode = CharMode.Gt;
                    return true;
                case '<':
                    LinePosition++;
                    charMode = CharMode.Lt;
                    return true;
                case 'a':
                case 'b':
                case 'c':
                case 'd':
                case 'e':
                case 'f':
                case 'g':
                case 'h':
                case 'i':
                case 'j':
                case 'k':
                case 'l':
                case 'm':
                case 'n':
                case 'o':
                case 'p':
                case 'q':
                case 'r':
                case 's':
                case 't':
                case 'u':
                case 'v':
                case 'w':
                case 'x':
                case 'y':
                case 'z':
                    charMode = CharMode.LowerAsciiLetter;
                    LinePosition++;
                    return true;
                case 'A':
                case 'B':
                case 'C':
                case 'D':
                case 'E':
                case 'F':
                case 'G':
                case 'H':
                case 'I':
                case 'J':
                case 'K':
                case 'L':
                case 'M':
                case 'N':
                case 'O':
                case 'P':
                case 'Q':
                case 'R':
                case 'S':
                case 'T':
                case 'U':
                case 'V':
                case 'W':
                case 'X':
                case 'Y':
                case 'Z':
                    charMode = CharMode.UpperAsciiLetter;
                    LinePosition++;
                    return true;
                case '0':
                case '1':
                case '2':
                case '3':
                case '4':
                case '5':
                case '6':
                case '7':
                case '8':
                case '9':
                    charMode = CharMode.Numeric;
                    LinePosition++;
                    return true;
                default:
                    charMode = CharMode.Others;
                    LinePosition++;
                    return true;
            }
        }