Пример #1
0
        /// <summary>
        /// Returns all the longest words from the input string.
        /// </summary>
        /// <param name="text">Input string.</param>
        /// <returns>All the longest words from the input string.</returns>
        public static List <string> AllTheLongestWords(string text)
        {
            char[] separators = new char[] { ' ' };

            string[] subs = StringMagic.RemoveExtraSymbols(text)
                            .Split(separators, StringSplitOptions.RemoveEmptyEntries);

            var allTheLongest = new List <string>();

            int tempMaxLength = default;

            //string longest = subs.OrderByDescending(s => s.Length).First();
            foreach (var sub in subs)
            {
                if (sub.Length >= tempMaxLength)
                {
                    tempMaxLength = sub.Length;
                }
            }

            foreach (var t in subs)
            {
                if ((t.Length == tempMaxLength))
                {
                    allTheLongest.Add(t);
                }
            }

            return(allTheLongest);
        }
Пример #2
0
        /// <summary>
        /// Returns one of the shortest words from the input string.
        /// </summary>
        /// <param name="text">Input string.</param>
        /// <returns>One of the shortest words from the input strings.</returns>
        public static string OneOfTheShortestWords(string text)
        {
            char[] separators = new char[] { ' ' };

            string[] subs = StringMagic.RemoveExtraSymbols(text)
                            .Split(separators, StringSplitOptions.RemoveEmptyEntries);

            int    tempMinLength    = int.MaxValue;
            string oneOfTheShortest = "";

            foreach (var sub in subs)
            {
                if (sub.Length <= tempMinLength)
                {
                    tempMinLength    = sub.Length;
                    oneOfTheShortest = sub;
                }
            }

            return(oneOfTheShortest);
        }