C# 算法

一.判断字符串中是否包含中文字符

方法1:采用将字符转换为ASCII码,并检查ASCII码是否大于等于128。如果是,则表示该字符是中文字符。如果存在中文字符,则返回true,否则返回false。(此方式对于特殊字符可能会失效)

cs 复制代码
 /// <summary>
 ///  返回true表示为包含中文,false不包含中文
 /// </summary>
 /// <param name="CString">判断的字符串</param>
 /// <returns></returns>
public bool ExistsChinese(string CString)
{
    // 首先判断字符串是否为空或长度为0
    if (CString != null && CString.Length > 0)
    {
        // 将字符串转换为字符数组
        char[] cs = CString.ToArray();
        
        // 遍历字符数组
        foreach (char c in cs)
        {
            // 判断字符的ASCII码是否大于等于128,如果是则表示是中文字符
            if (Convert.ToInt32(c) >= 128)
            {
                return true;
            }
        }
    }
    
    return false;
}

方法2:使用正则表达式来匹配中文字符(靠谱)

cs 复制代码
 /// <summary>
 /// 返回true表示为包含中文,false不包含中文
 /// </summary>
 /// <param name="CString">判断的字符串</param>
 /// <returns></returns>
 public bool ExistsChinese(string CString)
 {
     // 使用正则表达式匹配中文字符
     Regex regex = new Regex("[\u4e00-\u9fa5]");
     return regex.IsMatch(CString);
 }
相关推荐
吃好睡好便好8 小时前
在Matlab中绘制横直方图
开发语言·学习·算法·matlab
仰泳之鹅8 小时前
【C语言】自定义数据类型2——联合体与枚举
c语言·开发语言·算法
星星也在雾里9 小时前
PgBouncer 解决 PostgreSQL 连接数超限 + 可视化监控
数据库·postgresql
雨辰AI10 小时前
SpringBoot3 + 人大金仓读写分离 + 分库分表 + 集群高可用 全栈实战
java·数据库·mysql·政务
长城202410 小时前
关于MySql的ONLY_FULL_GROUP_BY问题
数据库·mysql·聚合列
x_yeyue11 小时前
三角形数
笔记·算法·数论·组合数学
常常有11 小时前
MySQL 底层执行原理:输入SQL语句到两阶段提交
数据库·sql·mysql
Xin_ye1008611 小时前
C# 零基础到精通教程 - 第七章:面向对象编程(入门)——类与对象
开发语言·c#
rockey62711 小时前
AScript异步执行与await关键字
c#·.net·script·eval·expression·异步执行·动态脚本
Mr. zhihao11 小时前
深入解析redis基本数据结构
数据结构·数据库·redis