(原)Ubuntu 9.10 下使用boost::regex库
在Boost库中引入regex库结束了C++不能玩正则表达式的尴尬,今天在学习时遇到了点问题,以下为记录:
代码:
/******************************************************
*本程序是验证某种卡号是否正确,卡号是由四组数字构成,
*每组数字又包含四个数字,中间用连字符隔开如"1234-4567-4568-9632",
*如果匹配成功则输出Yes,否则输出No
********************************************************/
#include <iostream>
#include <boost/regex.hpp>
#include <string>
int main(int argc, char *argv[])
{
boost::regex e("(\\d{4}[-]){3}\\d{4}");
std::string s("1234-4567-4568-9632");
if (boost::regex_match(s, e))
std::cout << "Yes" << std::endl;
else
std::cout << "No" << std::endl;
return 0;
}