• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录

gisoracle

  • 博客园
  • 联系
  • 订阅
  • 管理

公告

View Post

C#判断字符串的是否是汉字

  //第一种方法:正则表达式
        private bool IsChinese(string Text)
        {
            for (int i = 0; i < Text.Length; i++)
            {
                if (Regex.IsMatch(Text.ToString(), @"[\u4E00-\u9FA5]+$"))
                {
                    return true;
                    //MessageBox.Show("是汉字");
                }
                //else
                //    MessageBox.Show("不是汉字");
            }
            return false;

        }
        //第二种方法:汉字的 UNICODE 编码范围
        private bool IsChinese1(string Text)
        {
            string text = Text;
            char[] c = text.ToCharArray();
            for (int i = 0; i < c.Length; i++)
                if ((int)c[i] >= 0x4e00 && (int)c[i] <= 0x9fbb)
                    return true;

            return false;

        }
        //在 ASCII码表中,英文的范围是0-127,而汉字则是大于127
        private bool IsChinese2(string Text)
        {
            string text = Text;
            char[] c = text.ToCharArray();
            for (int i = 0; i < text.Length; i++)
            {
                if ((int)c[i] > 127)
                {
                    return true;
                    //Console.WriteLine("是汉字");
                }
                //else
                //    Console.WriteLine("不是汉字");
            }
            return false;

        }
        private void button2_Click(object sender, EventArgs e)
        {
            string text = this.textBox1.Text;
            if (IsChinese2(text))
            {
                MessageBox.Show(text + "中有汉字");
            }
            else
                MessageBox.Show(text + "中没有汉字");

        }

 

posted on 2017-12-14 16:41  gisai  阅读(611)  评论(0)    收藏  举报

刷新页面返回顶部
 
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3