Boost tokenizer 一种简单的批分字符串的办法
来源:互联网 发布:底层架空建筑面积算法 编辑:程序博客网 时间:2024/05/22 09:58
boost::tokenizer是用于切割字符串的,类似于Java里面的StringTokenizer。
使用方法如下
1。 typedef 一个自己 tokenizer,(由于boost::tokenizer的声明太长了,typedef比较方便一些)
e.g typedef boost::tokenizer<boost::char_separator<char> > tokenizer;
2。定义一个分割符,比如 “竖杠”,另外注意boost::keep_empty_tokens,这个参数,这是boost的tokenizer定义的策略,有两种drop_empty_tokens 和keep_empty_tokens,不同在于对于空tokens的处理。比如:
使用drop_empty_tokens 时,"s234||345",两个连续的'|'会被当作一个处理
使用keep_empty_tokens 时,"s234||345",两个连续的'|'会切割出一个空字符串
e.g boost::char_separator<char> sep('|', 0, boost::keep_empty_tokens);
3。定义一个tokens实例,str是要切分的字符串,sep是分割符 e.g tokenizer tokens(str, sep);
4。定义一个iterator来访问每个被分割的字符串 e.g tokenizer::iterator tok_iter = tokens.begin();
#include <boost/tokenizer.hpp>
void test_tokenizer()
{
string s("This is , a ,test!");
boost::tokenizer<> tok(s);
for(tokenizer<>::iterator beg=tok.begin(); beg!=tok.end();++beg)
{
cout << *beg << "\n";
}
}
0 0
- Boost tokenizer 一种简单的批分字符串的办法
- [Boost]一种简单的批分字符串的办法
- [Boost]一种简单的批分字符串的办法
- [Boost]一种简单的批分字符串的办法
- [Boost]一种简单的批分字符串的办法
- BOOST库 之 tokenizer 字符串的分解
- boost中tokenizer的用法举例
- boost库之tokenizer的使用
- 用boost::tokenizer分割字符串
- 一种用户向量的简单获取办法
- Boost 的 STL Container 切割工具(中):Tokenizer
- Boost之字符串分割器-Tokenizer
- 使用boost/tokenizer对字符串解析拆分
- boost之tokenizer库,字符串拆分
- boost tokenizer
- boost tokenizer
- boost::tokenizer
- boost tokenizer
- Sparse Autoencoder学习总结
- 入门HTML之图片的基本操作
- ACM-2000-ASKII排序
- FFmpeg 入门使用
- erlang进程监控:link和monitor
- Boost tokenizer 一种简单的批分字符串的办法
- 自定义标签入门例子流程总结
- 黑马程序员_java高级篇代理Day14(上)
- C/C++定义全局变量/常量几种方法的区别
- cocos2d-x游戏开发系列教程-坦克大战游戏启动界面的编写
- 网络基础
- linux下系统调用的实现
- Rational Rose 2003 下载、破解及安装方法(图文)
- 入门HTML之图片对齐方式,图像超链接,图像的映射