C#使用正则表达式 判断string 字符串是否包含汉字

C#使用正则表达式 判断string 字符串是否包含汉字
/// <summary>
/// 判断是否汉字
/// </summary>
private void IsChinese()
{
     string str="王";
      string str1="碳酸钠";
    Regex rg = new Regex("^[\u4e00-\u9fa5]$");//复杂一点的文字 判断不了 
    Debug.LOg(rg.IsMatch(str));//true
     Debug.LOg(rg.IsMatch(str1));//false

     string str="王";
      string str1="碳酸钠";
    Regex rg = new Regex(@"[\u4e00-\u9fbb]+");//应该能识别所有文字 如果有哪位大佬知道这俩有啥区别 望评论区留言告知一下,
    Debug.LOg(rg.IsMatch(str));//true
     Debug.LOg(rg.IsMatch(str1));//true

}
 
/// <summary>
/// 判断是否数字
/// </summary>
private bool IsNumber(string value)
{
    Regex rg = new Regex("^[0-9]$");
    return rg.IsMatch(value);
}
 
/// <summary>
/// 判断是否字母
/// </summary>
private bool IsWord(string value)
{
    Regex rg = new Regex("^[a-zA-Z]$");
    return rg.IsMatch(value);
}