none
請問 C# 有辦法判斷非國字嗎? RRS feed

  • 問題

  • 請問在 vs2003 中,有辦法判斷字串是否為國字嗎?

    例如:輸入 " ( " 傳回  false,

             輸入 "@" 也是傳回  false,

             輸入 "西" 傳回  true,

    只要不是國字的話,就傳回 false,程式有辦法做到嗎?

    2010年5月14日 上午 03:25

解答

所有回覆

  • 參考 [C#,Windows Form] 如何讓 TextBox 不能輸入中文

    http://social.msdn.microsoft.com/Forums/zh-TW/233/thread/82e1c74b-fa40-4ae5-a2ca-15c28022a1f3

     

    // 利用正則表達式,其中 \u4E00-\u9fa5 表示中文
            if (System.Text.RegularExpressions.Regex.IsMatch(textBox1.Text.Substring(i, 1), @"^[\u4E00-\u9fa5]+$"))


    歡迎參觀我的Blog.NET菜鳥自救會
    2010年5月14日 上午 03:47
    版主
  • 也可以利用判斷輸入的字碼是不是符合 ASCII 英文字母的 code 範圍,如果有出現指定範圍 (請自行查閱 ASCII code table) 以外的,就表示有非英數半型字出現。
    以下為簽名檔,請勿對號入座:
    初學不是問題,但用不正確的態度來問問題,那就是很大的問題。
    請不要藉新手之名行小白之實,否則只會讓更多無辜的新手得不到幫助而已。
    如果不知道什麼是小白,請參閱:何謂小白
    2010年5月14日 上午 04:32
    版主