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);
 }
相关推荐
IT19955 小时前
Fail2Ban 防护 MySQL 实战|登录失败 3 次,IP 封禁 24 小时
数据库·mysql
夕除5 小时前
redis--IO 多路复用(select + poll)
数据库·sql
一去不复返的通信er5 小时前
力扣-图论-岛屿数量
算法·leetcode·图论
程序 代码狂人8 小时前
切片表与分区表的区别(数据开发面试版)
java·大数据·开发语言·数据仓库·算法
HDU-Dade8 小时前
【校招笔试真题】简要介绍 Self-Attention 的前沿算法
人工智能·算法
lzhdim9 小时前
100条常用SQL语句
数据库·sql·mysql·mybatis
天河归来9 小时前
从原始消息到业务数据:三层数据架构的设计与实践
数据库·数据仓库·架构
数据库小学妹9 小时前
金融数据库成本怎么算?五笔钱加一张TCO表
数据库·金融行业·数据库选型·国产化替代·tco·金融数据库
KaiwuDB9 小时前
KaiwuDB 分布式集群扩缩容,从原理到完整操作踩坑总结
运维·数据库·分布式
auspicious航10 小时前
PostgreSQL的备份与恢复
数据库·postgresql