C++ boost 组件简介:字符串及文本处理
2008-11-10 15:17
411 查看
字符串及文本处理
字符串及文本处理Boost.Regex正则表达式是解决大量模式匹配问题的基础。它们常用于处理大的字符串,子串模糊查找,按某种格式tokenize字符串,或者是基于某种规则修改字符串。由于C++没有提供正则表达式支持,使得有些用户被迫转向其它支持正则表达式的语言,如Perl,awk, 和 sed。Regex提供了高效和强大的正则表达式支持,基于与STL同样的前提而设计,这使得它很容易使用。Regex已被即将发布的Library Technical Report接受。 Regex 的作者是 Dr. John Maddock. Boost.SpiritSpirit库是一个多用途的、递归的语法分析器生成框架。有了它,你可以创建命令行分析器,甚至是语言预处理器[1]。它允许程序员直接在C++代码里使用(近似于)EBNF的语法来指定语法规则。分析器非常难写,对于一个特定的问题,它们很快就变得难于维护和看懂。而Spirit解决了这些问题,而且达到了与手工制作的分析器一样或几乎一样的性能。[1] Wave库使用Spirit实现了一个与C++高度一致的预处理器,就证明了这一点。 Spirit 的作者是 Joel de Guzman, 以及一组熟练的程序员。 Boost.String_algo这是一组与字符串相关的算法。包括很多有用的算法,用于大小写转换,空格清除,字符串分割,查找及替换,等等。这组算法是目前C++标准库里已有功能的扩展。String_algo 的作者是 Pavol Droba. Boost.Tokenizer这个库提供了把字符序列分割成记号(token)的方法。通用的语法分析任务包括了在已分割的文本流里查找数据。如果可以把字符序列视为多个元素的容器将很有帮助,容器中的元素被执照用户定义的规则所分割。语法分析就成为了在这些元素上进行操作的单个任务,Tokenizer正好提供了这种功能。用户可以决定字符序列如何被分割,在用户请求新的元素时,库将找出相应的记号。Tokenizer 的作者是 John Bandela. 来源:Beyond the C++ Standard Library An Introduction to Boos |
相关文章推荐
- C++ boost 组件简介:数学及数字处理
- boost——字符串与文本处理string_algo(一)
- [Boost基础]字符串和文本处理——lexical_cast词汇转换
- boost之字符串与文本处理
- C++ boost 组件简介:数据结构, 容器, 迭代器和算法
- boost 字符串与文本处理 -> lexical_cast
- boost——字符串与文本处理tokenizer
- C++ boost 组件简介:函数对象及高级编程
- C++ boost 组件简介:泛型编程与模板元编程
- C++ boost 组件简介:输入/输出
- boost 05 字符串和文本的处理
- linux c/c++ 后台开发常用组件之:高级字符串处理库
- boost——字符串与文本处理format
- Boost 学习笔记--->字符串&文本处理
- c++boost组件简介:数据结构,容器,迭代器和算法
- Boost学习笔记 -- 字符串与文本处理
- boost 字符串和文本处理库概述
- boost——字符串与文本处理string_algo(二)
- python3-cookbook中一些关于字符串和文本的处理方式
- C++ 字符串各种处理