首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> 關於C語言

C# 計算字串中英數字元的長度

     編輯:關於C語言

需求

統計字串中包含多少個英數字元(0-9, A-Z, a-z),不含中文、標點、空白等。

實作邏輯

  1. 使用 CharEnumerator 逐字元遍歷。
  2. 以 Encoding.ASCII.GetBytes 取得 ASCII 碼值。
  3. 判斷是否落在數字 (48-57)、大寫 (65-90)、小寫 (97-122) 範圍。
  4. 符合者加入 ArrayList,最後取 Count。

關鍵程式碼

ArrayList itemList = new ArrayList();
CharEnumerator CEnumerator = textBox1.Text.GetEnumerator();
while (CEnumerator.MoveNext())
{
    byte[] array = Encoding.ASCII.GetBytes(CEnumerator.Current.ToString());
    int asciicode = (short)array[0];
    if ((asciicode >= 48 && asciicode <= 57) ||
        (asciicode >= 65 && asciicode <= 90) ||
        (asciicode >= 97 && asciicode <= 122))
    {
        itemList.Add(CEnumerator.Current.ToString());
    }
    textBox2.Text = itemList.Count.ToString();
}

改進建議

  • 使用 char.IsLetterOrDigit 簡化判斷(但會包含非 ASCII 字母)。
  • 改用 List 替代 ArrayList 獲得型別安全。
  • 將 textBox2.Text 指派移出迴圈,避免重複 UI 更新。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved