正则表达式匹配模式与字符串

时间:2014-02-17 14:37:08

标签: c# regex pattern-matching match

我正在实现一个方法,需要查找字符串是否对应于某个模式: 我使用以下代码:

if (Regex.IsMatch(str, @"^[\d]{3}00{\d]{4}$"))
{
      return false;
}
return true;

使用此字符串"123003678"对其进行测试 它返回真实...... 我无法弄清楚那里有什么问题......有什么想法吗? 感谢

2 个答案:

答案 0 :(得分:2)

在字符串中使用括号有点过了。

试试这个:

@"^\d{3}00\d{4}$"

在你的正则表达式示例中,第二个方括号以 {开头,以] 结尾,这会搞砸。

答案 1 :(得分:1)

你搞乱了大括号的方括号

试试这个

^[\d]{3}00[\d]{4}$

Regex Demo

if (Regex.IsMatch(str, @"^[\d]{3}00[\d]{4}$"))
{
      return false;
}
return true;