예제 #1
0
        public static string UpperFirstLetter(this string source, UpperFirstLetterOptions options)
        {
            if (source.IsNullOrEmpty(true))
            {
                return(source);
            }
            if (options == UpperFirstLetterOptions.UseToTitle)
            {
                TextInfo myTi = new CultureInfo("en-US", false).TextInfo;
                return(myTi.ToTitleCase(source));
            }
            else
            {
                char[] delimiterChars  = { ' ', ',', '.', ':', '\t' };
                var    sourceCharArray = source.ToCharArray();
                var    rtValue         = string.Empty;
                for (int i = 0; i < sourceCharArray.Length; i++)
                {
                    if (i == 0)
                    {
                        sourceCharArray[i] = sourceCharArray[i].ToString().ToUpper()[0];
                    }
                    else
                    {
                        if (delimiterChars.Contains(sourceCharArray[i - 1]))
                        {
                            sourceCharArray[i] = sourceCharArray[i].ToString().ToUpper()[0];
                        }
                        else
                        {
                            if (options == UpperFirstLetterOptions.UpperWordsFirstLetterLowerOthers)
                            {
                                sourceCharArray[i] = sourceCharArray[i].ToString().ToLower()[0];
                            }
                        }
                    }
                    rtValue = rtValue + sourceCharArray[i];
                }


                return(rtValue);
            }
        }
예제 #2
0
        public static string UpperFirstLetter(this string source, UpperFirstLetterOptions options)
        {
            if(source.IsNullOrEmpty(true))
            {
                return source;
            }
            if (options == UpperFirstLetterOptions.UseToTitle)
            {
                TextInfo myTi = new CultureInfo("en-US", false).TextInfo;
                return myTi.ToTitleCase(source);
            }
            else
            {
                char[] delimiterChars = {' ', ',', '.', ':', '\t'};
                var sourceCharArray = source.ToCharArray();
                var rtValue = string.Empty;
                for (int i = 0; i < sourceCharArray.Length; i++)
                {
                    if (i == 0)
                    {
                        sourceCharArray[i] = sourceCharArray[i].ToString().ToUpper()[0];
                    }
                    else
                    {
                        if (delimiterChars.Contains(sourceCharArray[i - 1]))
                        {
                            sourceCharArray[i] = sourceCharArray[i].ToString().ToUpper()[0];
                        }
                        else
                        {
                            if (options == UpperFirstLetterOptions.UpperWordsFirstLetterLowerOthers)
                            {
                                sourceCharArray[i] = sourceCharArray[i].ToString().ToLower()[0];
                            }
                        }
                    }
                    rtValue = rtValue + sourceCharArray[i];
                }

                return rtValue;
            }
        }