本文整理汇总了C#中System.Globalization.StringInfo.GetTextElementEnumerator方法的典型用法代码示例。如果您正苦于以下问题:C# StringInfo.GetTextElementEnumerator方法的具体用法?C# StringInfo.GetTextElementEnumerator怎么用?C# StringInfo.GetTextElementEnumerator使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.Globalization.StringInfo
的用法示例。
在下文中一共展示了StringInfo.GetTextElementEnumerator方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Main
//引入命名空间
using System;
using System.Text;
using System.Globalization;
public sealed class App {
static void Main() {
// The string below contains combining characters.
String s = "a\u0304\u0308bc\u0327";
// Show each 'character' in the string.
EnumTextElements(s);
// Show the index in the string where each 'character' starts.
EnumTextElementIndexes(s);
}
// Show how to enumerate each real character (honoring surrogates) in a string.
static void EnumTextElements(String s) {
// This StringBuilder holds the output results.
StringBuilder sb = new StringBuilder();
// Use the enumerator returned from GetTextElementEnumerator
// method to examine each real character.
TextElementEnumerator charEnum = StringInfo.GetTextElementEnumerator(s);
while (charEnum.MoveNext()) {
sb.AppendFormat(
"Character at index {0} is '{1}'{2}",
charEnum.ElementIndex, charEnum.GetTextElement(),
Environment.NewLine);
}
// Show the results.
Console.WriteLine("Result of GetTextElementEnumerator:");
Console.WriteLine(sb);
}
// Show how to discover the index of each real character (honoring surrogates) in a string.
static void EnumTextElementIndexes(String s) {
// This StringBuilder holds the output results.
StringBuilder sb = new StringBuilder();
// Use the ParseCombiningCharacters method to
// get the index of each real character in the string.
Int32[] textElemIndex = StringInfo.ParseCombiningCharacters(s);
// Iterate through each real character showing the character and the index where it was found.
for (Int32 i = 0; i < textElemIndex.Length; i++) {
sb.AppendFormat(
"Character {0} starts at index {1}{2}",
i, textElemIndex[i], Environment.NewLine);
}
// Show the results.
Console.WriteLine("Result of ParseCombiningCharacters:");
Console.WriteLine(sb);
}
}
输出:
Result of GetTextElementEnumerator: Character at index 0 is 'a-"' Character at index 3 is 'b' Character at index 4 is 'c,' Result of ParseCombiningCharacters: Character 0 starts at index 0 Character 1 starts at index 3 Character 2 starts at index 4
示例2: Main
//引入命名空间
using System;
using System.Globalization;
using System.Threading;
class Class1 {
static void Main(string[] args) {
TextElementEnumerator Iter;
String MyStr, OutBuf;
MyStr = "The Quick programmer ran rings around the lazy manager";
//Lets do the iterator thing
Iter = StringInfo.GetTextElementEnumerator(MyStr);
while (Iter.MoveNext())
{
OutBuf = "Character at position " +
Iter.ElementIndex.ToString() +
" = " + Iter.Current;
Console.WriteLine(OutBuf);
}
}
}