正则表达式对于像我这种不太懂的,真是越用越烦。请前辈们帮我看看! Regex rx = new Regex(@"([a-zA-Z]+{[a-zA-Z0-9]+})+"); string text = "aa{111}bb{333}33cc{addf}"; if (rx.IsMatch(text))
{
Console.WriteLine("基本结构匹配");
}
else
{
Console.WriteLine("基本结构不匹配");
} Console.ReadLine();33cc{addf}这种匹配我想它是验证错误的,可以确被匹配成了cc{addf}
{
Console.WriteLine("基本结构匹配");
}
else
{
Console.WriteLine("基本结构不匹配");
} Console.ReadLine();33cc{addf}这种匹配我想它是验证错误的,可以确被匹配成了cc{addf}
上面打错字
你的要求是([a-zA-Z]+{[a-zA-Z0-9]+})+就是括号前面只能是字母,没有数字,所以匹配成了cc{addf}当然是对的,按照你的意思,你的正则写的不够强悍。。
Regex rx = new Regex(@"([a-zA-Z]+{[a-zA-Z0-9]+})+"); string text = "aa{111}bb{333}33cc{addf}"; if (rx.IsMatch(text))
{
Console.WriteLine("基本结构匹配");
Console.WriteLine(rx.Match(text).Value);
}
else
{
Console.WriteLine("基本结构不匹配");
}输出基本结构匹配
aa{111}bb{333}
VS2005
你的意思出现33cc{addf},比配失败?
Regex rx = new Regex(@"^([a-zA-Z]+{[a-zA-Z0-9]+})+$");