Skip to content

Instantly share code, notes, and snippets.

@sebgod
Last active August 29, 2015 14:01
Show Gist options
  • Save sebgod/2980139451df3041f231 to your computer and use it in GitHub Desktop.
Save sebgod/2980139451df3041f231 to your computer and use it in GitHub Desktop.
Lists all Unicode digits in a Console application, including astral characters
public class AlllUnicodeDigits {
public static void Main()
{
var unicodeEncoding = new UnicodeEncoding(!BitConverter.IsLittleEndian, false);
Console.InputEncoding = unicodeEncoding;
Console.OutputEncoding = unicodeEncoding;
var sb = new StringBuilder();
for (var codePoint = 0; codePoint < 0x10ffff; codePoint++)
{
var isSurrogateCodePoint =
codePoint <= UInt16.MaxValue
&& ( char.IsLowSurrogate((char) codePoint)
|| char.IsHighSurrogate((char) codePoint)
);
if (isSurrogateCodePoint)
continue;
var codePointString = char.ConvertFromUtf32(codePoint);
if (Regex.IsMatch(codePointString, @"\d"))
sb.AppendFormat("{0} ", codePointString);
}
Console.WriteLine(sb.ToString());
Console.ReadKey();
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment