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);
 }
相关推荐
GreenTea4 小时前
深度解读 Anthropic 多智能体报告:更强的模型 ≠ 更好的协调
前端·后端·算法
2603_965148114 小时前
如何解析JSON数据?API返回的商品信息处理教程
开发语言·数据库·python·自动化·json·api
ltl4 小时前
RocksDB 经典故障排查:L0、compaction 与 write stall
数据库
波波0075 小时前
C# 15 重磅新特性: 带标签 break 与 continue:重新定义嵌套循环控制流
服务器·前端·c#
fqq35 小时前
力扣刷题前置Java语法
算法·leetcode·职场和发展
xfhuangfu5 小时前
Oracle中建立到CDB和PDB的连接
数据库·oracle·rpc
小小龙学IT6 小时前
DuckDB 深度实战:用 C++ 在进程内跑一个「分析型数据库」
数据库·c++
NineData6 小时前
DTCC 2026 预告|NineData CEO& 创始人叶正盛:面向 AI Agent 的数据库 DevOps 与数据复制实践
数据库·人工智能·数据库开发·devops·ninedata·数据库技术·dtcc
J_bean7 小时前
MySQL 事务是否必须手动开启?
数据库·mysql·数据库事务·自动提交·手动提交
J_bean7 小时前
MySQL InnoDB 如何检测死锁、判定死锁、处理死锁
数据库·mysql·死锁·死锁检测·处理死锁·死锁判定