boost regex - 如何匹配一个范围内的偶数个数字

boost regex - how to match an even number of digits from a range

我想匹配一个范围内的偶数个数字。这是一个正则表达式,它匹配范围内的许多数字:

boost::regex expr("[0-9]{2,20}");

如何修改该正则表达式以匹配某个范围内的偶数位数字?

您的模式 [0-9]{2,20} 将数字 0-9 重复 2 - 20 次。

您可以使用锚点来断言字符串的开始 ^ 和结束 $ 并重复匹配 2 位数字 1-10 次:

^(?:[0-9]{2}){1,10}$

Regex demo