Regex   字符是不是汉字

一. 判断一个字符是不是汉字通常有三种方法:

1.用ASCII码判断

在 ASCII码表中,英文的范围是0-127,而汉字则是大于127

string text = "是不是汉字,ABC"; 
     for (int i = 0; i < text.Length; i++) 
     { 
          if ((int)text[i] > 127) 
                Console.WriteLine("是汉字"); 
          else 
                Console.WriteLine("不是汉字"); 
     } 
  string text = "是不是汉字,ABC";
       for (int i = 0; i < text.Length; i++)
       {
            if ((int)text[i] > 127)
                  Console.WriteLine("是汉字");
            else
                  Console.WriteLine("不是汉字");
       }

2、用汉字的 UNICODE 编码范围判断

  汉字的 UNICODE 编码范围是4e00-9fbb

string text = "是不是汉字,ABC"; 
     char[] c = text.ToCharArray(); 
 
      for (int i = 0; i < c.Length;i++) 
      if (c[i] >= 0x4e00 && c[i] <= 0x9fbb) 
             Console.WriteLine("是汉字"); 
      else 
             Console.WriteLine("不是汉字"); 
 string text = "是不是汉字,ABC";
      char[] c = text.ToCharArray();

for (int i = 0; i < c.Length;i++)
       if (c[i] >= 0x4e00 && c[i] <= 0x9fbb)
              Console.WriteLine("是汉字");
       else
              Console.WriteLine("不是汉字");

3、用正则表达式判断

  用正则表达式判断也是用汉字的 UNICODE 编码范围

string text = "是不是汉字,ABC"; 
     for (int i = 0; i < text.Length; i++) 
     { 
            if (Regex.IsMatch(text[i].ToString(), @"[\u4e00-\u9fbb]")) 
                Console.WriteLine("是汉字"); 
            else 
                Console.WriteLine("不是汉字"); 
     }

二.最常用的:

1. 验证数字:"^[0-9]*$"
2.验证字母:"^[A-Za-z]+$"。
3.验证邮件:"^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$"
4.验证汉字:"^[\u4e00-\u9fa5]{0,}$"

三.正在表达式:

参考百度百科:

http://baike.baidu.com/view/94238.htm

Regex 字符是不是汉字的更多相关文章

  1. 【转载】C#怎么判断字符是不是汉字

    支持并尊重原创!原文地址:http://jingyan.baidu.com/article/2c8c281deb79ed0008252af1.html 判断一个字符是不是汉字通常有三种方法,第1种用 ...

  2. C#怎么判断字符是不是汉字 汉字和Unicode编码互相转换

    判断一个字符是不是汉字通常有三种方法,第1种用 ASCII 码判断(在 ASCII码表中,英文的范围是0-127,而汉字则是大于127,根据这个范围可以判断),第2种用汉字的 UNICODE 编码范围 ...

  3. 如何利用java把文件中的Unicode字符转换为汉字

    有些文件中存在Unicode字符和非Unicode字符,如何利用java快速的把文件中的Unicode字符转换为汉字而不影响文件中的其他字符呢, 我们知道虽然java 在控制台会把Unicode字符直 ...

  4. php去掉字符串中的最后一个字符和汉字

    ###php去掉字符串中的最后一个字符和汉字 1.php去掉字符串中的最后一个字符: //方法一: $newstr = substr($str,0,strlen($str)-1); //方法二: $n ...

  5. Java Int类型与字符,汉字之间的转换

    /** * java 中的流主要是分为字节流和字符流 * 再一个角度分析的话可以分为输入流和输出流 * 输入和输出是一个相对的概念 相对的分别是jvm虚拟机的内存大小 * 从另一个角度讲Java或者用 ...

  6. 基于stm32f4的ucGUI通过外部flash存储汉字库显示任意英文字符和汉字组合(控件可用)

    在做一个用到ucGUI的项目的时候要用到不定的汉字和英文字符,但是ucGUI本身又不支持读取芯片外部flash的字库来显示,于是查了下资料,如下: http://www.cnblogs.com/hik ...

  7. python中文utf8编码后是占3个字符,unicode汉字为2字节

    一个中文utf8编码后是占3个字符,所以求长度的函数可以这样写 def str_len(str): try: row_l=len(str) utf8_l=len(str.encode('utf-8') ...

  8. C#怎么判断字符是不是汉字

    .用ASCII码判断 在 ASCII码表中,英文的范围是0-,而汉字则是大于127,根据这个范围可以判断,具体代码如下: string text = "我去"; bool res ...

  9. C语言 使用char字符实现汉字处理

    系统:windows 64 编译器:gcc version 8.1.0 (x86_64-posix-seh-rev0, Built by MinGW-W64 project) 文本编辑器:notepa ...

随机推荐

  1. Careercup - Microsoft面试题 - 5428361417457664

    2014-05-11 03:37 题目链接 原题: You have three jars filled with candies. One jar is filled with banana can ...

  2. Codeforces Round #354 (Div. 2) D. Theseus and labyrinth

    题目链接: http://codeforces.com/contest/676/problem/D 题意: 如果两个相邻的格子都有对应朝向的门,则可以从一个格子到另一个格子,给你初始坐标xt,yt,终 ...

  3. 请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。例如,字符串"+100","5e2","-123","3.1416"和"-1E-16"都表示数值。 但是"12e","1a3.14","1.2.3","+-5"和"12e+4.3"都不是。

    // test20.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include<iostream> #include< ...

  4. [bzoj 3687]简单题 bitset的运用

    题意 给定一个正整数集,求所有子集算术和的异或和   题解 每次加入一个元素x,用原集合a xor (a<< x) 然后每一个值统计一下 bitset看起来很优越,是一个能位运算的布尔数组 ...

  5. php中==与===区别

    ==是不判断二者是否是同一数据类型,而===是更为严格的比较,它不但要求二者值相等,而且还要求它们的数据类型也相同

  6. Notes on the Dirichlet Distribution and Dirichlet Process

    Notes on the Dirichlet Distribution and Dirichlet Process In [3]: %matplotlib inline   Note: I wrote ...

  7. 在C++的类中,普通成员函数不能作为pthread_create的线程函数,如果要作为pthread_create中的线程函数,必须是static

    在C++的类中,普通成员函数不能作为pthread_create的线程函数,如果要作为pthread_create中的线程函数,必须是static ! 在C语言中,我们使用pthread_create ...

  8. HDU 4287 Intelligent IME(string,map,stl,make_pair)

    题目 转载来的,有些stl和string的函数蛮好的: //numx[i]=string(sx); //把char[]类型转换成string类型 // mat.insert(make_pair(num ...

  9. POJ 2010

    Moo University - Financial Aid Time Limit: 1000MS   Memory Limit: 30000K Total Submissions: 4235   A ...

  10. POJ 2891 Strange Way to Express Integers (解一元线性方程组)

    求解一元线性同余方程组: x=ri(mod ai) i=1,2,...,k 解一元线性同余方程组的一般步骤:先求出前两个的解,即:x=r1(mod a1)     1x=r2(mod a2)     ...