//value为待匹配的字符串,regex为正则表达式
public bool IsMatch(string value, string regex)
{
if (regex == "*" || value == regex) return true;
if (value == "") return false;
if (value[0] == regex[0] || regex[0] == '?') return IsMatch(value.Substring(1), regex.Substring(1));
if (regex[0] == '*') return IsMatch(value.Substring(1), regex) || IsMatch(value, regex.Substring(1));
return false;
}