hellokandy的博客

业精于勤荒于嬉,行成于思毁于随!

Greta 入门指南

GRETA是微软研究院推出的一个正则表达式模板类库,GRETA 包含的 C++ 对象和函数,使字符串的模式匹配和替换变得很容易,它们是:
rpattern: 搜索的模式
match_results/subst_results: 放置匹配、替换结果的容器

为了执行搜索和替换的操作,用户首先需要用一个描述匹配规则的字符串来显式初始化一个rpattern对象,然后把需要匹配的字符串作为参数,调用rpattern的函数,比如match()或者substitute(),就可以得到匹配后的结果。如果match()/substitute()调用失败,函数返回false,如果调用成功,函数返回true,此时,match_results对象存储了匹配结果。请看例子代码:

#include <iostream>
#include <string>
#include "regexpr2.h"

#ifdef _UNICODE
	#define tstring wstring
	#define tcout   wcout
#else
	#define tstring string
	#define tcout   cout
#endif

using namespace std;
using namespace regex;

int main() 
{
    match_results results;
    tstring str( _T("The book cost $12.34") );
    rpattern pat( _T("\\$(\\d+)(\\.(\\d\\d))?") );  
    // Match a dollar sign followed by one or more digits,
    // optionally followed by a period and two more digits.
    // The double-escapes are necessary to satisfy the compiler.

    match_results::backref_type br = pat.match( str, results );
    if( br.matched ) 
	{
        tcout << ("match success!") << endl;
        tcout << ("price: ") << br << endl;
    } 
	else 
	{
        tcout << ("match failed!") << endl;
    }
    return 0;
}

程序输出结果:

match success!
price: $12.34

阅读更多
版权声明:本文为博主原创文章,未经博主同意不可随意转载。 https://blog.csdn.net/hellokandy/article/details/51544972
文章标签: greta
个人分类: 正则表达式
想对作者说点什么? 我来说一句

Redis入门指南-高清.pdf

2017年09月08日 14.83MB 下载

Redis入门指南 第2版 高清完整PDF版

2016年10月28日 29.12MB 下载

Go入门指南中文版 pdf

2017年03月19日 26.58MB 下载

Redis入门指南(第2版)完整版

2016年05月17日 2.43MB 下载

Redis入门指南 第2版(完整版)

2017年01月14日 29.08MB 下载

没有更多推荐了,返回首页

不良信息举报

Greta 入门指南

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭