匹配中文:[\u4e00-\u9fa5]英文字母:[a-zA-Z]数字:[0-9]匹配中文,英文字母和数字及_:
^[\u4e00-\u9fa5_a-zA-Z0-9]+$

解决方案 »

  1.   

    我这样写是正确的吗??//验证英文字母,数字,汉字和_
    Regex reg = new Regex("^[\u4e00-\u9fa5_a-zA-Z0-9]+$");
    bool flag = reg.IsMatch(filename);
    if(flag == false)
    {
    return filename;
    }
    else
    {
    return "0";
    }
      

  2.   

    looks fine, but you can change 
    if(flag == false)
    ==>
    if(!flag)
      

  3.   

    using System;
    using System.Text.RegularExpressions;
    class TestPattern
    {
        static bool IsMatch(string filename)
        {
    Regex reg = new Regex("^[\u4e00-\u9fa5_a-zA-Z0-9]+$");
    return reg.IsMatch(filename);
        }
       public static void Main()
       {
             Console.WriteLine(IsMatch("123.edb"));  //False
    Console.WriteLine(IsMatch("%&%(&%(%%")); //False
    Console.WriteLine(IsMatch("abc")); //true
       }
    }