正则表达式不以零开头

时间:2013-03-06 04:12:53

标签: c++ regex boost

我正在为我的Windows应用程序使用boost正则表达式。 这是我的正则表达式folder-\\d{1,3}这个接受带有folder-前缀的字符串和任何三位数数字,例如:folder-01folder-001,{{1} }。

但现在我想避免数字从零开始。例如:folder-121folder-01并且只允许数字从任何其他数字开始,例如:folder-011folder-1folder-12

那么我该如何写改变这个正则表达式。

2 个答案:

答案 0 :(得分:3)

试试这个

folder-[1-9][0-9]{,2}

在这里,我们基本上匹配folder-后跟 1 9 之间的数字,然后是最多 2个数字。

答案 1 :(得分:2)

您可以使用Character Classes来完成此操作,如下所示:

  folder-[1-9][0-9]{0,2}