C# 中判断字符串是不是汉字

//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("不是汉字");
            }
        } 

//2、用汉字的 UNICODE 编码范围判断
//汉字的 UNICODE 编码范围是4e00-9fbb,具体代码如下:
 string text = "是不是汉字,ABC,keleyi.com";
            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,keleyi.com";
             for (int i = 0; i < text.Length; i++)
             {
                   if (Regex.IsMatch(text[i].ToString(), @"[\u4e00-\u9fbb]+{1}"))
                   {
                       Console.WriteLine("是汉字");
                   }
                   else
                   {
                       Console.WriteLine("不是汉字");
                   }
             }
时间: 2024-11-08 23:11:35

C# 中判断字符串是不是汉字的相关文章

字符串--java中判断字符串是否为数字的方法的几种方法?

ava中判断字符串是否为数字的方法: 1.用JAVA自带的函数 public static boolean isNumeric(String str){ for (int i = 0; i < str.length(); i++){ System.out.println(str.charAt(i)); if (!Character.isDigit(str.charAt(i))){ return false; } } return true; } 2.用正则表达式 首先要import java.u

java中判断字符串是否为数字的方法的几种方法

Java中判断字符串是否为数字的方法: 1.用JAVA自带的函数 public static boolean isNumeric(String str){ for (int i = 0; i < str.length(); i++){ System.out.println(str.charAt(i)); if (!Character.isDigit(str.charAt(i))){ return false; } } return true; } 2.用正则表达式 首先要import java.

解决.net中截取字符串的汉字与数字还有静态扩展方法

转载 http://blog.163.com/cn_dreamgo/blog/static/52679452200961033212407/ 这两天在C#编程中应用到C#代码与C的代码信息交互,但是在信息获取的过程发现当字符串中存在中文汉字时,两种代码下获取的字符串长度不相同.查找原因为:C#中使用的unicode编码格式,默认一个汉字为一个字符.例如:    str1 = "测试";在C#中使用str1.length的到的长度是2,在C中strlen()得到的长度是4:这样在字符长处

SQL中判断字符串中包含字符的方法

通过2个函数CHARINDEX和PATINDEX以及通配符的灵活使用函数:CHARINDEX和PATINDEXCHARINDEX:查某字符(串)是否包含在其他字符串中,返回字符串中指定表达式的起始位置.PATINDEX:查某字符(串)是否包含在其他字符串中,返回指定表达式中某模式第一次出现的起始位置:如果在全部有效的文本和字符数据类型中没有找到该模式,则返回零.特殊:可以使用通配符! 例子:1. 查询字符串中是否包含非数字字符SELECT PATINDEX('%[^0-9]%', '1235X4

java中判断字符串是否相等有两种方法:

1.用“==”运算符,该运算符表示指向字符串的引用是否相同,比如: String a="abc";String b="abc",那么a==b将返回true.这是因为在java中字符串的值是不可改变的,相同的字符串在内存中只会存一份,所以a和b指向的是同一个对象:再比如:String a=new String("abc");String b=new String("abc");那么a==b将返回false,因为a和b指向不同的对

SQL Server中判断字符串出现的位置及字符串截取

首先建一张测试表: create table teststring(name nvarchar(100));insert into teststringvalues('张三,李四,王五,马六,萧十一,皇宫'); 1.判断字符串中某字符(字符串)出现的次数,第一次出现的位置最后一次出现的位置: 查看','出现的次数 select LEN(name)-LEN(REPLACE(name,',','')) from teststring; 查看','第一次出现的位置: select CHARINDEX(

Python2中print字符串含有汉字无法正常显示

demo1 Ubuntu16,Python2,且安装过中文语言什么的. #!usr/bin/python# -*- coding: utf-8 -*-a = "我就是中文啊"print("a:",a)1234 输出就是: ('a:', '\xe6\x88\x91\xe5\xb0\xb1\xe6\x98\xaf\xe4\xb8\xad\xe6\x96\x87\xe5\x95\x8a')1 各种尝试,encode和decode,都不行!咦,为啥呢? 后来才知道,Pyth

C#中判断字符串中包含某个字符

C#判断字符串是否存在某个字符,如果存在进行替换. //定义一个字符串 string  str=".net/Java/asp.net"; //检验“/” if(str.Contains("/")) { //替换“/”为“||”    str.Replace('/','||'); }

PHP中判断字符串是否含有中文

<?php /** * [1.测试一] * 当$str = '中文测试'; 时输出"全部是汉字";当$str = '中a文3测试'; 时输出"不全是汉字"; * 应用说明:当某个地方要求用户输入的内容必须全部是中文时,这个就派上用场了. */ $str = '中文测试'; if (preg_match_all("/^([\x81-\xfe][\x40-\xfe])+$/", $str, $match)) { echo '全部是汉字'; }