System.Text.StringBuilder.AppendFirstCharToUpper(string)

Here are the examples of the csharp api System.Text.StringBuilder.AppendFirstCharToUpper(string) taken from open source projects. By voting up you can indicate which examples are most useful and appropriate.

1 Examples 7

19 Source : NameCleaner.cs
with MIT License
from zamgi

public static string Clean( string name, char wordsSeparator = '.' )
        {
            if ( name.IsNullOrEmpty() )
            {
                return (name);
            }

            var array = name.Split( PUNCTUATION_CHARS, StringSplitOptions.RemoveEmptyEntries );

            #region [.phase #1.]
            var firstWholeNumbersWord = default(string);
            var words = new List< (string word, bool isOnlyLetters) >( array.Length );
            foreach ( var s in array )
            {
                if ( EXCLUDES_WORDS_SET.Contains( s ) )
                {
                    continue;
                }
                if ( int.TryParse( s, out var _ ) )
                {
                    if ( firstWholeNumbersWord == null )
                    {
                        firstWholeNumbersWord = s;
                    }
                    continue;
                }

                words.Add( (s, s.IsOnlyLetters()) );
            }
            if ( !words.Any() )
            {
                var s = (firstWholeNumbersWord ?? "---");
                words.Add( (s, s.IsOnlyLetters()) );
            }
            #endregion

            #region [.phase #2.]
            const char SPACE = ' ';

            var sb = new StringBuilder( name.Length );
            var prev_word_isOnlyLetters = true;
            foreach ( var t in words )
            {
                if ( t.word.TryParseSE( out var se ) )
                {
                    if ( !sb.IsEmpty() )
                    {
                        sb.ReplaceLastCharIfNotEqual( wordsSeparator );
                    }
                    sb.Append( se ).Append( wordsSeparator );
                    break;
                }

                if ( prev_word_isOnlyLetters ) //&& t.isOnlyLetters )
                {
                    sb.AppendFirstCharToUpper( t.word ).Append( (t.isOnlyLetters ? SPACE : wordsSeparator) );
                }
                else
                {
                    sb.Append( t.word ).Append( wordsSeparator );
                }
                prev_word_isOnlyLetters = t.isOnlyLetters;
            }
            sb.RemoveLastChar();
            #endregion

            return (sb.ToString());
        }