using System.Globalization;
public static void Main()
String s = "au034\u0308bc\u0327";
EnumTextElementIndexes(s);
static void EnumTextElements(String s)
StringBuilder sb = new StringBuilder();
TextElementEnumerator charEnum = StringInfo.GetTextElementEnumerator(s);
while(charEnum.MoveNext())
"Character at index {0} is '{1}'{2}",
charEnum.ElementIndex, charEnum.GetTextElement(),
Console.WriteLine("Result of GetTextElementEnumerator: ");
static void EnumTextElementIndexes(String s)
StringBuilder sb = new StringBuilder();
Int32[] textElemenIndex = StringInfo.ParseCombiningCharacters(s);
for(Int32 i = 0; i < textElemenIndex.Length; i++)
"Character {0} starts at Index {1}{2}",
i, textElemenIndex[i], Environment.NewLine);
Console.WriteLine("Result of parseCombiningCharacters: ");