Export (0) Print
Expand All

StringBuilder.Chars Property

Updated: January 2011

Gets or sets the character at the specified character position in this instance.

Namespace:  System.Text
Assembly:  mscorlib (in mscorlib.dll)

public char this[
	int index
] { get; set; }

Parameters

index
Type: System.Int32
The position of the character.

Property Value

Type: System.Char
The Unicode character at position index.

ExceptionCondition
ArgumentOutOfRangeException

index is outside the bounds of this instance while setting a character.

IndexOutOfRangeException

index is outside the bounds of this instance while getting a character.

The index parameter is the position of a character within the StringBuilder. The first character in the string is at index 0. The length of a string is the number of characters it contains. The last accessible character of a StringBuilder instance is at index Length - 1.

Chars is the default property of the StringBuilder class. In C#, it is an indexer. This means that individual characters can be retrieved from the Chars property as shown in the following example, which counts the number of alphabetic, white-space, and punctuation characters in a string.


using System;
using System.Text;

public class Example
{
   public static void Demo(System.Windows.Controls.TextBlock outputBlock)
   {
      int nAlphabeticChars = 0;
      int nWhitespace = 0;
      int nPunctuation = 0;  
      StringBuilder sb = new StringBuilder("This is a simple sentence.");

      for (int ctr = 0; ctr < sb.Length; ctr++) {
         char ch = sb[ctr];
         if (Char.IsLetter(ch)) { nAlphabeticChars++;  continue; }
         if (Char.IsWhiteSpace(ch)) { nWhitespace++;  continue; }
         if (Char.IsPunctuation(ch)) nPunctuation++;  
      }    

      outputBlock.Text += String.Format("The sentence '{0}' has:\n", sb);
      outputBlock.Text += String.Format("   Alphabetic characters: {0}\n", 
                                        nAlphabeticChars);
      outputBlock.Text += String.Format("   Whitespace characters: {0}\n", 
                                        nWhitespace);
      outputBlock.Text += String.Format("   Punctuation characters: {0}\n", 
                                        nPunctuation);
   }
}
// The example displays the following output:
//       The sentence 'This is a simple sentence.' has:
//          Alphabetic characters: 21
//          Whitespace characters: 4
//          Punctuation characters: 1


Silverlight

Supported in: 5, 4, 3

Silverlight for Windows Phone

Supported in: Windows Phone OS 7.1, Windows Phone OS 7.0

XNA Framework

Supported in: Xbox 360, Windows Phone OS 7.0

For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.

Date

History

Reason

January 2011

Expanded the Remarks section.

Customer feedback.

Community Additions

ADD
Show:
© 2014 Microsoft