There are multiple static “Is” methods on the Char structure that help determine a character’s category. All of these methods (except IsSurrogatePair) take a single character argument (or string and index) and return a boolean whether the character is in the corresponding category.

Char.Is Methods

These are the Char.Is methods:

IsControl Is a control character
IsDigit Is a decimal, radix-10 digit
IsHighSurrogate Is a high surrogate, such that the numeric value ranges from U+D800 through U+DBFF
IsLetter Is an alphabetic letter
IsLetterOrDigit Is an alphabetic letter or decimal digit
IsLower Is a lowercase letter
IsLowSurrogate Is a low surrogate, such that the numeric value ranges from U+DC00 through U+DFFF
IsNumber Is any Unicode number character
IsPunctuation Is a punctuation mark
IsSeparator Is a separator character
IsSurrogate Is a surrogate character, such that the numeric value ranges from U+D800 through U+DFFF
IsSurrogatePair Whether two specified characters form a surrogate pair
IsSymbol Is a symbol character
IsUpper Is an uppercase letter
IsWhiteSpace Is white space

Unicode Category

The UnicodeCategory defines the result of these methods. For example, the IsNumber method returns whether a character is a member of the DecimalDigitNumber, LetterNumber, or OtherNumbers Unicode categories. When you take into account the upper ASCII and Unicode characters, these methods can return true for more characters than you might expect. For example, IsDigit will return true not only for 0-9, but also for x0661, an Arabic digit.

Char.Is Results for ASCII Characters

The following table shows the result of each Char.Is method for the ASCII character set:

### chr Ctl Dig HiS Let LoD Low LoS Num Pun Sep Sur Sym Upp Wht
0     YES no  no  no  no  no  no  no  no  no  no  no  no  no
1     YES no  no  no  no  no  no  no  no  no  no  no  no  no
2     YES no  no  no  no  no  no  no  no  no  no  no  no  no
3     YES no  no  no  no  no  no  no  no  no  no  no  no  no
4     YES no  no  no  no  no  no  no  no  no  no  no  no  no
5     YES no  no  no  no  no  no  no  no  no  no  no  no  no
6     YES no  no  no  no  no  no  no  no  no  no  no  no  no
7     YES no  no  no  no  no  no  no  no  no  no  no  no  no
8     YES no  no  no  no  no  no  no  no  no  no  no  no  no
9     YES no  no  no  no  no  no  no  no  no  no  no  no  YES

### chr Ctl Dig HiS Let LoD Low LoS Num Pun Sep Sur Sym Upp Wht
10     YES no  no  no  no  no  no  no  no  no  no  no  no  YES
11     YES no  no  no  no  no  no  no  no  no  no  no  no  YES
12     YES no  no  no  no  no  no  no  no  no  no  no  no  YES
13     YES no  no  no  no  no  no  no  no  no  no  no  no  YES
14     YES no  no  no  no  no  no  no  no  no  no  no  no  no
15     YES no  no  no  no  no  no  no  no  no  no  no  no  no
16     YES no  no  no  no  no  no  no  no  no  no  no  no  no
17     YES no  no  no  no  no  no  no  no  no  no  no  no  no
18     YES no  no  no  no  no  no  no  no  no  no  no  no  no
19     YES no  no  no  no  no  no  no  no  no  no  no  no  no

### chr Ctl Dig HiS Let LoD Low LoS Num Pun Sep Sur Sym Upp Wht
20     YES no  no  no  no  no  no  no  no  no  no  no  no  no
21     YES no  no  no  no  no  no  no  no  no  no  no  no  no
22     YES no  no  no  no  no  no  no  no  no  no  no  no  no
23     YES no  no  no  no  no  no  no  no  no  no  no  no  no
24     YES no  no  no  no  no  no  no  no  no  no  no  no  no
25     YES no  no  no  no  no  no  no  no  no  no  no  no  no
26     YES no  no  no  no  no  no  no  no  no  no  no  no  no
27     YES no  no  no  no  no  no  no  no  no  no  no  no  no
28     YES no  no  no  no  no  no  no  no  no  no  no  no  no
29     YES no  no  no  no  no  no  no  no  no  no  no  no  no

### chr Ctl Dig HiS Let LoD Low LoS Num Pun Sep Sur Sym Upp Wht
30     YES no  no  no  no  no  no  no  no  no  no  no  no  no
31     YES no  no  no  no  no  no  no  no  no  no  no  no  no
32     no  no  no  no  no  no  no  no  no  YES no  no  no  YES
33  !  no  no  no  no  no  no  no  no  YES no  no  no  no  no
34  ”  no  no  no  no  no  no  no  no  YES no  no  no  no  no
35  #  no  no  no  no  no  no  no  no  YES no  no  no  no  no
36  $  no  no  no  no  no  no  no  no  no  no  no  YES no  no
37  %  no  no  no  no  no  no  no  no  YES no  no  no  no  no
38  &  no  no  no  no  no  no  no  no  YES no  no  no  no  no
39  ‘  no  no  no  no  no  no  no  no  YES no  no  no  no  no

### chr Ctl Dig HiS Let LoD Low LoS Num Pun Sep Sur Sym Upp Wht
40  (  no  no  no  no  no  no  no  no  YES no  no  no  no  no
41  )  no  no  no  no  no  no  no  no  YES no  no  no  no  no
42  *  no  no  no  no  no  no  no  no  YES no  no  no  no  no
43  +  no  no  no  no  no  no  no  no  no  no  no  YES no  no
44  ,  no  no  no  no  no  no  no  no  YES no  no  no  no  no
45  –  no  no  no  no  no  no  no  no  YES no  no  no  no  no
46  .  no  no  no  no  no  no  no  no  YES no  no  no  no  no
47  /  no  no  no  no  no  no  no  no  YES no  no  no  no  no
48  0  no  YES no  no  YES no  no  YES no  no  no  no  no  no
49  1  no  YES no  no  YES no  no  YES no  no  no  no  no  no

### chr Ctl Dig HiS Let LoD Low LoS Num Pun Sep Sur Sym Upp Wht
50  2  no  YES no  no  YES no  no  YES no  no  no  no  no  no
51  3  no  YES no  no  YES no  no  YES no  no  no  no  no  no
52  4  no  YES no  no  YES no  no  YES no  no  no  no  no  no
53  5  no  YES no  no  YES no  no  YES no  no  no  no  no  no
54  6  no  YES no  no  YES no  no  YES no  no  no  no  no  no
55  7  no  YES no  no  YES no  no  YES no  no  no  no  no  no
56  8  no  YES no  no  YES no  no  YES no  no  no  no  no  no
57  9  no  YES no  no  YES no  no  YES no  no  no  no  no  no
58  :  no  no  no  no  no  no  no  no  YES no  no  no  no  no
59  ;  no  no  no  no  no  no  no  no  YES no  no  no  no  no

### chr Ctl Dig HiS Let LoD Low LoS Num Pun Sep Sur Sym Upp Wht
60  <  no  no  no  no  no  no  no  no  no  no  no  YES no  no
61  =  no  no  no  no  no  no  no  no  no  no  no  YES no  no
62  >  no  no  no  no  no  no  no  no  no  no  no  YES no  no
63  ?  no  no  no  no  no  no  no  no  YES no  no  no  no  no
64  @  no  no  no  no  no  no  no  no  YES no  no  no  no  no
65  A  no  no  no  YES YES no  no  no  no  no  no  no  YES no
66  B  no  no  no  YES YES no  no  no  no  no  no  no  YES no
67  C  no  no  no  YES YES no  no  no  no  no  no  no  YES no
68  D  no  no  no  YES YES no  no  no  no  no  no  no  YES no
69  E  no  no  no  YES YES no  no  no  no  no  no  no  YES no

### chr Ctl Dig HiS Let LoD Low LoS Num Pun Sep Sur Sym Upp Wht
70  F  no  no  no  YES YES no  no  no  no  no  no  no  YES no
71  G  no  no  no  YES YES no  no  no  no  no  no  no  YES no
72  H  no  no  no  YES YES no  no  no  no  no  no  no  YES no
73  I  no  no  no  YES YES no  no  no  no  no  no  no  YES no
74  J  no  no  no  YES YES no  no  no  no  no  no  no  YES no
75  K  no  no  no  YES YES no  no  no  no  no  no  no  YES no
76  L  no  no  no  YES YES no  no  no  no  no  no  no  YES no
77  M  no  no  no  YES YES no  no  no  no  no  no  no  YES no
78  N  no  no  no  YES YES no  no  no  no  no  no  no  YES no
79  O  no  no  no  YES YES no  no  no  no  no  no  no  YES no

### chr Ctl Dig HiS Let LoD Low LoS Num Pun Sep Sur Sym Upp Wht
80  P  no  no  no  YES YES no  no  no  no  no  no  no  YES no
81  Q  no  no  no  YES YES no  no  no  no  no  no  no  YES no
82  R  no  no  no  YES YES no  no  no  no  no  no  no  YES no
83  S  no  no  no  YES YES no  no  no  no  no  no  no  YES no
84  T  no  no  no  YES YES no  no  no  no  no  no  no  YES no
85  U  no  no  no  YES YES no  no  no  no  no  no  no  YES no
86  V  no  no  no  YES YES no  no  no  no  no  no  no  YES no
87  W  no  no  no  YES YES no  no  no  no  no  no  no  YES no
88  X  no  no  no  YES YES no  no  no  no  no  no  no  YES no
89  Y  no  no  no  YES YES no  no  no  no  no  no  no  YES no

### chr Ctl Dig HiS Let LoD Low LoS Num Pun Sep Sur Sym Upp Wht
90  Z  no  no  no  YES YES no  no  no  no  no  no  no  YES no
91  [  no  no  no  no  no  no  no  no  YES no  no  no  no  no
92    no  no  no  no  no  no  no  no  YES no  no  no  no  no
93  ]  no  no  no  no  no  no  no  no  YES no  no  no  no  no
94  ^  no  no  no  no  no  no  no  no  no  no  no  YES no  no
95  _  no  no  no  no  no  no  no  no  YES no  no  no  no  no
96  `  no  no  no  no  no  no  no  no  no  no  no  YES no  no
97  a  no  no  no  YES YES YES no  no  no  no  no  no  no  no
98  b  no  no  no  YES YES YES no  no  no  no  no  no  no  no
99  c  no  no  no  YES YES YES no  no  no  no  no  no  no  no

### chr Ctl Dig HiS Let LoD Low LoS Num Pun Sep Sur Sym Upp Wht
100  d  no  no  no  YES YES YES no  no  no  no  no  no  no  no
101  e  no  no  no  YES YES YES no  no  no  no  no  no  no  no
102  f  no  no  no  YES YES YES no  no  no  no  no  no  no  no
103  g  no  no  no  YES YES YES no  no  no  no  no  no  no  no
104  h  no  no  no  YES YES YES no  no  no  no  no  no  no  no
105  i  no  no  no  YES YES YES no  no  no  no  no  no  no  no
106  j  no  no  no  YES YES YES no  no  no  no  no  no  no  no
107  k  no  no  no  YES YES YES no  no  no  no  no  no  no  no
108  l  no  no  no  YES YES YES no  no  no  no  no  no  no  no
109  m  no  no  no  YES YES YES no  no  no  no  no  no  no  no

### chr Ctl Dig HiS Let LoD Low LoS Num Pun Sep Sur Sym Upp Wht
110  n  no  no  no  YES YES YES no  no  no  no  no  no  no  no
111  o  no  no  no  YES YES YES no  no  no  no  no  no  no  no
112  p  no  no  no  YES YES YES no  no  no  no  no  no  no  no
113  q  no  no  no  YES YES YES no  no  no  no  no  no  no  no
114  r  no  no  no  YES YES YES no  no  no  no  no  no  no  no
115  s  no  no  no  YES YES YES no  no  no  no  no  no  no  no
116  t  no  no  no  YES YES YES no  no  no  no  no  no  no  no
117  u  no  no  no  YES YES YES no  no  no  no  no  no  no  no
118  v  no  no  no  YES YES YES no  no  no  no  no  no  no  no
119  w  no  no  no  YES YES YES no  no  no  no  no  no  no  no

### chr Ctl Dig HiS Let LoD Low LoS Num Pun Sep Sur Sym Upp Wht
120  x  no  no  no  YES YES YES no  no  no  no  no  no  no  no
121  y  no  no  no  YES YES YES no  no  no  no  no  no  no  no
122  z  no  no  no  YES YES YES no  no  no  no  no  no  no  no
123  {  no  no  no  no  no  no  no  no  YES no  no  no  no  no
124  |  no  no  no  no  no  no  no  no  no  no  no  YES no  no
125  }  no  no  no  no  no  no  no  no  YES no  no  no  no  no
126  ~  no  no  no  no  no  no  no  no  no  no  no  YES no  no
127     YES no  no  no  no  no  no  no  no  no  no  no  no  no
128     YES no  no  no  no  no  no  no  no  no  no  no  no  no
129     YES no  no  no  no  no  no  no  no  no  no  no  no  no

### chr Ctl Dig HiS Let LoD Low LoS Num Pun Sep Sur Sym Upp Wht
130     YES no  no  no  no  no  no  no  no  no  no  no  no  no
131     YES no  no  no  no  no  no  no  no  no  no  no  no  no
132     YES no  no  no  no  no  no  no  no  no  no  no  no  no
133     YES no  no  no  no  no  no  no  no  no  no  no  no  YES
134     YES no  no  no  no  no  no  no  no  no  no  no  no  no
135     YES no  no  no  no  no  no  no  no  no  no  no  no  no
136     YES no  no  no  no  no  no  no  no  no  no  no  no  no
137     YES no  no  no  no  no  no  no  no  no  no  no  no  no
138     YES no  no  no  no  no  no  no  no  no  no  no  no  no
139     YES no  no  no  no  no  no  no  no  no  no  no  no  no

### chr Ctl Dig HiS Let LoD Low LoS Num Pun Sep Sur Sym Upp Wht
140     YES no  no  no  no  no  no  no  no  no  no  no  no  no
141     YES no  no  no  no  no  no  no  no  no  no  no  no  no
142     YES no  no  no  no  no  no  no  no  no  no  no  no  no
143     YES no  no  no  no  no  no  no  no  no  no  no  no  no
144     YES no  no  no  no  no  no  no  no  no  no  no  no  no
145     YES no  no  no  no  no  no  no  no  no  no  no  no  no
146     YES no  no  no  no  no  no  no  no  no  no  no  no  no
147     YES no  no  no  no  no  no  no  no  no  no  no  no  no
148     YES no  no  no  no  no  no  no  no  no  no  no  no  no
149     YES no  no  no  no  no  no  no  no  no  no  no  no  no

### chr Ctl Dig HiS Let LoD Low LoS Num Pun Sep Sur Sym Upp Wht
150     YES no  no  no  no  no  no  no  no  no  no  no  no  no
151     YES no  no  no  no  no  no  no  no  no  no  no  no  no
152     YES no  no  no  no  no  no  no  no  no  no  no  no  no
153     YES no  no  no  no  no  no  no  no  no  no  no  no  no
154     YES no  no  no  no  no  no  no  no  no  no  no  no  no
155     YES no  no  no  no  no  no  no  no  no  no  no  no  no
156     YES no  no  no  no  no  no  no  no  no  no  no  no  no
157     YES no  no  no  no  no  no  no  no  no  no  no  no  no
158     YES no  no  no  no  no  no  no  no  no  no  no  no  no
159     YES no  no  no  no  no  no  no  no  no  no  no  no  no

### chr Ctl Dig HiS Let LoD Low LoS Num Pun Sep Sur Sym Upp Wht
160     no  no  no  no  no  no  no  no  no  YES no  no  no  YES
161  ¡  no  no  no  no  no  no  no  no  YES no  no  no  no  no
162  ¢  no  no  no  no  no  no  no  no  no  no  no  YES no  no
163  £  no  no  no  no  no  no  no  no  no  no  no  YES no  no
164  ☼  no  no  no  no  no  no  no  no  no  no  no  YES no  no
165  ¥  no  no  no  no  no  no  no  no  no  no  no  YES no  no
166  ▌  no  no  no  no  no  no  no  no  no  no  no  YES no  no
167  §  no  no  no  no  no  no  no  no  no  no  no  YES no  no
168  ”  no  no  no  no  no  no  no  no  no  no  no  YES no  no
169  c  no  no  no  no  no  no  no  no  no  no  no  YES no  no

### chr Ctl Dig HiS Let LoD Low LoS Num Pun Sep Sur Sym Upp Wht
170  ª  no  no  no  YES YES YES no  no  no  no  no  no  no  no
171  «  no  no  no  no  no  no  no  no  YES no  no  no  no  no
172  ¬  no  no  no  no  no  no  no  no  no  no  no  YES no  no
173  –  no  no  no  no  no  no  no  no  YES no  no  no  no  no
174  r  no  no  no  no  no  no  no  no  no  no  no  YES no  no
175  _  no  no  no  no  no  no  no  no  no  no  no  YES no  no
176  °  no  no  no  no  no  no  no  no  no  no  no  YES no  no
177  ±  no  no  no  no  no  no  no  no  no  no  no  YES no  no
178  ²  no  no  no  no  no  no  no  YES no  no  no  no  no  no
179  3  no  no  no  no  no  no  no  YES no  no  no  no  no  no

### chr Ctl Dig HiS Let LoD Low LoS Num Pun Sep Sur Sym Upp Wht
180  ‘  no  no  no  no  no  no  no  no  no  no  no  YES no  no
181  µ  no  no  no  YES YES YES no  no  no  no  no  no  no  no
182  ¶  no  no  no  no  no  no  no  no  no  no  no  YES no  no
183  ·  no  no  no  no  no  no  no  no  YES no  no  no  no  no
184  ,  no  no  no  no  no  no  no  no  no  no  no  YES no  no
185  1  no  no  no  no  no  no  no  YES no  no  no  no  no  no
186  º  no  no  no  YES YES YES no  no  no  no  no  no  no  no
187  »  no  no  no  no  no  no  no  no  YES no  no  no  no  no
188  ¼  no  no  no  no  no  no  no  YES no  no  no  no  no  no
189  ½  no  no  no  no  no  no  no  YES no  no  no  no  no  no

### chr Ctl Dig HiS Let LoD Low LoS Num Pun Sep Sur Sym Upp Wht
190  _  no  no  no  no  no  no  no  YES no  no  no  no  no  no
191  ¿  no  no  no  no  no  no  no  no  YES no  no  no  no  no
192  A  no  no  no  YES YES no  no  no  no  no  no  no  YES no
193  A  no  no  no  YES YES no  no  no  no  no  no  no  YES no
194  A  no  no  no  YES YES no  no  no  no  no  no  no  YES no
195  A  no  no  no  YES YES no  no  no  no  no  no  no  YES no
196  Ä  no  no  no  YES YES no  no  no  no  no  no  no  YES no
197  Å  no  no  no  YES YES no  no  no  no  no  no  no  YES no
198  Æ  no  no  no  YES YES no  no  no  no  no  no  no  YES no
199  Ç  no  no  no  YES YES no  no  no  no  no  no  no  YES no

### chr Ctl Dig HiS Let LoD Low LoS Num Pun Sep Sur Sym Upp Wht
200  E  no  no  no  YES YES no  no  no  no  no  no  no  YES no
201  É  no  no  no  YES YES no  no  no  no  no  no  no  YES no
202  E  no  no  no  YES YES no  no  no  no  no  no  no  YES no
203  E  no  no  no  YES YES no  no  no  no  no  no  no  YES no
204  I  no  no  no  YES YES no  no  no  no  no  no  no  YES no
205  I  no  no  no  YES YES no  no  no  no  no  no  no  YES no
206  I  no  no  no  YES YES no  no  no  no  no  no  no  YES no
207  I  no  no  no  YES YES no  no  no  no  no  no  no  YES no
208  D  no  no  no  YES YES no  no  no  no  no  no  no  YES no
209  Ñ  no  no  no  YES YES no  no  no  no  no  no  no  YES no

### chr Ctl Dig HiS Let LoD Low LoS Num Pun Sep Sur Sym Upp Wht
210  O  no  no  no  YES YES no  no  no  no  no  no  no  YES no
211  O  no  no  no  YES YES no  no  no  no  no  no  no  YES no
212  O  no  no  no  YES YES no  no  no  no  no  no  no  YES no
213  O  no  no  no  YES YES no  no  no  no  no  no  no  YES no
214  Ö  no  no  no  YES YES no  no  no  no  no  no  no  YES no
215  x  no  no  no  no  no  no  no  no  no  no  no  YES no  no
216  O  no  no  no  YES YES no  no  no  no  no  no  no  YES no
217  U  no  no  no  YES YES no  no  no  no  no  no  no  YES no
218  U  no  no  no  YES YES no  no  no  no  no  no  no  YES no
219  U  no  no  no  YES YES no  no  no  no  no  no  no  YES no

### chr Ctl Dig HiS Let LoD Low LoS Num Pun Sep Sur Sym Upp Wht
220  Ü  no  no  no  YES YES no  no  no  no  no  no  no  YES no
221  Y  no  no  no  YES YES no  no  no  no  no  no  no  YES no
222  _  no  no  no  YES YES no  no  no  no  no  no  no  YES no
223  ß  no  no  no  YES YES YES no  no  no  no  no  no  no  no
224  à  no  no  no  YES YES YES no  no  no  no  no  no  no  no
225  á  no  no  no  YES YES YES no  no  no  no  no  no  no  no
226  â  no  no  no  YES YES YES no  no  no  no  no  no  no  no
227  a  no  no  no  YES YES YES no  no  no  no  no  no  no  no
228  ä  no  no  no  YES YES YES no  no  no  no  no  no  no  no
229  å  no  no  no  YES YES YES no  no  no  no  no  no  no  no

### chr Ctl Dig HiS Let LoD Low LoS Num Pun Sep Sur Sym Upp Wht
230  æ  no  no  no  YES YES YES no  no  no  no  no  no  no  no
231  ç  no  no  no  YES YES YES no  no  no  no  no  no  no  no
232  è  no  no  no  YES YES YES no  no  no  no  no  no  no  no
233  é  no  no  no  YES YES YES no  no  no  no  no  no  no  no
234  ê  no  no  no  YES YES YES no  no  no  no  no  no  no  no
235  ë  no  no  no  YES YES YES no  no  no  no  no  no  no  no
236  ì  no  no  no  YES YES YES no  no  no  no  no  no  no  no
237  í  no  no  no  YES YES YES no  no  no  no  no  no  no  no
238  î  no  no  no  YES YES YES no  no  no  no  no  no  no  no
239  ï  no  no  no  YES YES YES no  no  no  no  no  no  no  no

### chr Ctl Dig HiS Let LoD Low LoS Num Pun Sep Sur Sym Upp Wht
240  d  no  no  no  YES YES YES no  no  no  no  no  no  no  no
241  ñ  no  no  no  YES YES YES no  no  no  no  no  no  no  no
242  ò  no  no  no  YES YES YES no  no  no  no  no  no  no  no
243  ó  no  no  no  YES YES YES no  no  no  no  no  no  no  no
244  ô  no  no  no  YES YES YES no  no  no  no  no  no  no  no
245  o  no  no  no  YES YES YES no  no  no  no  no  no  no  no
246  ö  no  no  no  YES YES YES no  no  no  no  no  no  no  no
247  ÷  no  no  no  no  no  no  no  no  no  no  no  YES no  no
248  o  no  no  no  YES YES YES no  no  no  no  no  no  no  no
249  ù  no  no  no  YES YES YES no  no  no  no  no  no  no  no

### chr Ctl Dig HiS Let LoD Low LoS Num Pun Sep Sur Sym Upp Wht
250  ú  no  no  no  YES YES YES no  no  no  no  no  no  no  no
251  û  no  no  no  YES YES YES no  no  no  no  no  no  no  no
252  ü  no  no  no  YES YES YES no  no  no  no  no  no  no  no
253  y  no  no  no  YES YES YES no  no  no  no  no  no  no  no
254  _  no  no  no  YES YES YES no  no  no  no  no  no  no  no
255  ÿ  no  no  no  YES YES YES no  no  no  no  no  no  no  no

Key

In case it’s not obvious, here is the key to the table above:

YES = method returned true
no = method returned false

### = character’s numeric value 0-255
chr = printable character
Ctl = IsControl
Dig = IsDigit
HiS = IsHighSurrogate
Let = IsLetter
LoD = IsLetterOrDigit
Low = IsLower
LoS = IsLowSurrogate
Num = IsNumber
Pun = IsPunctuation
Sep = IsSeparator
Sur = IsSurrogate
Sym = IsSymbol
Upp = IsUpper
Wht = IsWhitespace

C# Code

Here is the console test program that generates this table:

using System;namespace CharIs
{
    class Program
    {
        static void Main( string[] args )
        {
            string yes = "YES";
            string no = "no ";
            for (int i = 0; i < 256; i++)
            {
                if (i % 10 == 0)
                    Console.WriteLine( "n### chr Ctl Dig HiS Let LoD Low LoS Num Pun Sep Sur Sym Upp Wht" );

char c = (char)i;
                string isControl = Char.IsControl( c ) ? yes : no;
                string isDigit = Char.IsDigit( c ) ? yes : no;
                string isHighSurrogate = Char.IsHighSurrogate( c ) ? yes : no;
                string isLetter = Char.IsLetter( c ) ? yes : no;
                string isLetterOrDigit = Char.IsLetterOrDigit( c ) ? yes : no;
                string isLower = Char.IsLower( c ) ? yes : no;
                string isLowSurrogate = Char.IsLowSurrogate( c ) ? yes : no;
                string isNumber = Char.IsNumber( c ) ? yes : no;
                string isPunctuation = Char.IsPunctuation( c ) ? yes : no;
                string isSeparator = Char.IsSeparator( c ) ? yes : no;
                string isSurrogate = Char.IsSurrogate( c ) ? yes : no;
                string isSymbol = Char.IsSymbol( c ) ? yes : no;
                string isUpper = Char.IsUpper( c ) ? yes : no;
                string isWhiteSpace = Char.IsWhiteSpace( c ) ? yes : no;

                if (Char.IsControl( c ))
                    c = ' ';

                string chr = String.Format( " {0} ", c );
                Console.WriteLine( "{0,3} {1} {2} {3} {4} {5} {6} {7} {8} {9} {10} {11} {12} {13} {14} {15}",
                    i, chr, isControl, isDigit, isHighSurrogate, isLetter, isLetterOrDigit, isLower,
                    isLowSurrogate, isNumber, isPunctuation, isSeparator, isSurrogate,
                    isSymbol, isUpper, isWhiteSpace );
            }

            Console.ReadLine();
        }
    }
}