boost库中的正则表达式

boost库中的正则表达式

ID:13456407

大小:409.50 KB

页数:18页

时间:2018-07-22

boost库中的正则表达式_第1页
boost库中的正则表达式_第2页
boost库中的正则表达式_第3页
boost库中的正则表达式_第4页
boost库中的正则表达式_第5页
资源描述:

《boost库中的正则表达式》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、Regex头文件:"boost/regex.hpp"正则表达式被封装为一个类型basic_regex的对象。我们将在下一节更深入地讨论正则表达式如何被编译和分析,这里我们首先粗略地看看basic_regex,以及这个库中三个最重要的算法。namespaceboost{template>classbasic_regex{public:explicitbasic_regex(constcharT*p,flag_ty

2、pef=regex_constants::normal);boolempty()const;unsignedmark_count()const;flag_typeflags()const;};typedefbasic_regexregex;typedefbasic_regexwregex;}成员函数explicitbasic_regex(constcharT*p,flag_typef=regex_constants::normal);这个构造函数接受一个包含正则表达

3、式的字符序列,还有一个参数用于指定使用正则表达式时的选项,例如是否忽略大小写。如果p中的正则表达式无效,则抛出一个bad_expression或regex_error的异常。注意这两个异常其实是同一个东西;在写这本书之时,尚未改变当前使用的名字bad_expression,但下一个版本的Boost.Regex将会使用regex_error.boolempty()const;这个成员函数是一个谓词,当basic_regex实例没有包含一个有效的正则表达式时返回true,即它被赋予一个空的字符序列时

4、。unsignedmark_count()const;mark_count返回regex中带标记子表达式的数量。带标记子表达式是指正则表达式中用圆括号括起来的部分。匹配这个子表达式的文本可以通过调用某个正则表达式算法而获得。flag_typeflags()const;返回一个位掩码,其中包含这个basic_regex所设置的选项标志。例如标志icase,表示正则表达式忽略大小写,标志JavaScript,表示regex使用JavaScript的语法。typedefbasic_regex

5、>regex;typedefbasic_regexwregex;不要使用类型basic_regex来定义变量,你应该使用这两个typedef中的一个。这两个类型,regex和wregex,是两种字符类型的缩写,就如string和wstring是basic_string和basic_string的缩写一样。这种相似性是不一样的,某种程度上,regex是一个特定类型的字符串的容器。普通函数template

6、or,classtraits>boolregex_match(constcharT*str,match_results&m,constbasic_regex&e,match_flag_typeflags=match_default);regex_match判断一个正则表达式(参数e)是否匹配整个字符序列str.它主要用于验证文本。注意,这个正则表达式必须匹配被分析串的全部,否则函数返回false.如果整个序列被成功匹配,r

7、egex_match返回True.templateboolregex_search(constcharT*str,match_results&m,constbasic_regex&e,match_flag_typeflags=match_default);regex_search类似于regex_match,但它不要求整个字符序列完全匹配。你可以

8、用regex_search来查找输入中的一个子序列,该子序列匹配正则表达式e.templatebasic_stringregex_replace(constbasic_string&s,constbasic_regex&e,constbasic_string&fmt,match_flag_typeflags=match_default);regex_replace在整个字符序列中

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。