在C#中,通常判斷一個字符是否為大寫字母,有些人可能會第一時間想到用正則表達式,那除了正則表達式,是否還有其他方式呢?
答案是肯定的,先一睹為快,具體代碼如下:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Demo_GC { class Program { static void Main(string[] args) { char c = 'B'; CompareChar(c); } /// <summary> /// 判斷字符是否為大寫字母 /// </summary> /// <param name="c"></param> /// <returns></returns> private static int CompareChar(char c) { if (c > 'A' && c < 'Z')
{ return 1; } else { return 0; } } } }
沒錯,字符也可以這樣直接比較,這里的字符比較其實是比較字符對應的ACSII碼,調試狀態監控變量c,如下:
我們可以看到字符'B'之前有個66,這個'B'對應的ACSII碼中數值,由此得知,其實C#中字符比較實際上比較的是ACSII碼,具體字符對應的ASCII碼如下圖所示: