Boost和标准库中正则表达式的使用
2015-09-21 15:57
302 查看
#include "ReadShp.h"
#include <regex>
#include "boost/regex.hpp"
int main()
{
//ReadShp sh(StringBase(_T("D:\\IP\\J-圏央道(Rev.0.5.01.01)試作データ\\90202_LNND_SPLIT\\khi_road_vectorLine_FeatureV.shp")));
//ReadShp sh(StringBase(_T("D:\\IP\\J-圏央道(Rev.0.5.01.01)試作データ\\90202_LNND_SPLIT\\R468_1_LNNDT_LLND_LANE_MARK_01.shp")));
//sh.run();
/*
// 正则表达式
// regex_match和regex_search都只匹配一次
// 它们唯一的不同就是前者需要整个字符串完全匹配,后者只部分匹配
StringBase str = _T("111com_310018931@qq.cam_3100.qq.cpm.3100g");
boost::wregex rx(_T("c[a|o|p]m"));
std::wsmatch mst;
StringBase::iterator it_begin = str.begin();
StringBase::iterator it_end = str.end();
std::wsregex_iterator it(it_begin, it_end, rx);
std::wsregex_iterator it_gg;
for (; it != it_gg; ++it)
{
std::wcout<<it->position()<<std::endl;
}
*/
StringBase str = _T("111com_310018931@qq.cam_3100.qq.cpm.3100g");
boost::wregex rx(_T("c[a|o|p]m"));
boost::wsmatch mst;
StringBase::iterator it_begin = str.begin();
StringBase::iterator it_end = str.end();
boost::wsregex_iterator it(it_begin, it_end, rx);
boost::wsregex_iterator it_gg;
for (; it != it_gg; ++it)
{
std::wcout<<it->position()<<std::endl;
}
system("pause");
return 0;
}
作者: http://blog.csdn.net/lp310018931
#include <regex>
#include "boost/regex.hpp"
int main()
{
//ReadShp sh(StringBase(_T("D:\\IP\\J-圏央道(Rev.0.5.01.01)試作データ\\90202_LNND_SPLIT\\khi_road_vectorLine_FeatureV.shp")));
//ReadShp sh(StringBase(_T("D:\\IP\\J-圏央道(Rev.0.5.01.01)試作データ\\90202_LNND_SPLIT\\R468_1_LNNDT_LLND_LANE_MARK_01.shp")));
//sh.run();
/*
// 正则表达式
// regex_match和regex_search都只匹配一次
// 它们唯一的不同就是前者需要整个字符串完全匹配,后者只部分匹配
StringBase str = _T("111com_310018931@qq.cam_3100.qq.cpm.3100g");
boost::wregex rx(_T("c[a|o|p]m"));
std::wsmatch mst;
StringBase::iterator it_begin = str.begin();
StringBase::iterator it_end = str.end();
std::wsregex_iterator it(it_begin, it_end, rx);
std::wsregex_iterator it_gg;
for (; it != it_gg; ++it)
{
std::wcout<<it->position()<<std::endl;
}
*/
StringBase str = _T("111com_310018931@qq.cam_3100.qq.cpm.3100g");
boost::wregex rx(_T("c[a|o|p]m"));
boost::wsmatch mst;
StringBase::iterator it_begin = str.begin();
StringBase::iterator it_end = str.end();
boost::wsregex_iterator it(it_begin, it_end, rx);
boost::wsregex_iterator it_gg;
for (; it != it_gg; ++it)
{
std::wcout<<it->position()<<std::endl;
}
system("pause");
return 0;
}
作者: http://blog.csdn.net/lp310018931
相关文章推荐
- sql去重查询
- hdu 1257 最少拦截系统 (贪心)
- 添加的千分的分隔符
- Tomcat下部署多个项目
- ocp-v13-683
- 添加千分的分隔符
- git 命令学习及更新
- 提高网页性能的九大技巧
- JAVA自带监控工具的介绍
- NET编程简易生成用友财务软件的财务接口数据
- Spring with Hibernate persistence and transactions example
- Android中常见的像素单位
- ubuntu 环境变量改错导致所有命令用不了
- 单例模式的七种写法
- android获取系统wifi状态等
- 解决ubuntu 14.04删ibus导致系统设置项目的损失后,,退出关机问题是不正常的
- 20150910程序包管理
- CAGradientLayer的使用
- SAP BO 学习地址
- 【springmvc+mybatis项目实战】杰信商贸-20.合同货物数和附件数