作者:朱金灿
来源:blog.csdn.net/clever101
GRETA是微软研究院推出的一个正则表达式模板类库,GRETA 包含的 C++ 对象和函数,使字符串的模式匹配和替换变得很容易,它们是:
· " rpattern: 搜索的模式
· " match_results/subst_results: 放置匹配、替换结果的容器
据测试,GRETA库的匹配速度比Boost Regex和ATL7的CATLRegExp都快。另外GRETA虽说是微软研究院出的,在linux其实也可以用的。
GRETA库原在vc6下发布的。用VS 2005编译,会报错:
具体错误参照:
social.microsoft.com/Forums/zh-TW/vcgeneral/thread/7461e68d-739d-4b36-a068-1c12a827e594 ,“Greta Parser for VS2005”,就是:
'regex::hetero_stack<AlignmentT,RuntimeTypeCheckT,AssumePodT,DynamicBlockSizeT,StaticBlockSizeT>:tack_node::header' : dependent name is not a type
解决办法:在模板定义的tack_node前面加上struct即可。
具体就是在下面代码行:
byte_t m_buf[ aligned_sizeof<stack_node::header>::no_rtti + StaticBlockSizeT ];
修改为:
byte_t m_buf[ aligned_sizeof<struct stack_node::header>::no_rtti + StaticBlockSizeT ];
基于VS 2005的源码工程(一个Win 32静态库工程)可以在此下载:
greta for VS2005
分享到:
相关推荐
《greta库在VS2005环境下的应用与实践》 greta库,作为一个专为Visual Studio 2005(VS2005)设计的正则表达式模板库,为开发者提供了强大而高效的正则表达式处理功能。在本文中,我们将深入探讨greta库的核心特性...
Greta 是一个在Visual Studio(VS)环境下可以使用的开源软件开发框架,主要针对的是C++编程语言。这个框架使得开发者能够在VS集成开发环境中方便地进行Greta项目的构建、调试和管理,无需离开熟悉的VS界面。从描述...
在VS2013环境下,GRETA库已经过编译测试,确保了在该版本的Visual Studio下可以顺利运行,这为开发者提供了一个稳定可靠的工具,用于在C++项目中处理字符串匹配和搜索任务。 正则表达式是一种强大的文本处理工具,...
在描述中提到的"vc2008工程,2005的删掉工程配置文件重建",意味着Greta库最初可能是为Visual Studio 2005开发的,但随着项目的更新,已经适应了Visual Studio 2008的环境。这意味着Greta库具有一定的兼容性和升级...
通过以上介绍,我们可以看到Greta库提供了一个简洁的接口,使得在不支持原生正则表达式的VC6环境下也能方便地进行正则操作。尽管文档可能不够详尽,但通过实践和调试,开发者可以快速掌握其用法,提升字符串处理的...
《GRETA 2.6.4:正则表达式的C++...同时,由于其兼容VC6编译环境,使得即使在较旧的开发工具下,也能享受到现代正则表达式库带来的便利。对于需要处理大量文本数据或进行文本分析的项目来说,GRETA是一个值得考虑的库。
为了在VC环境下使用,确保你的编译器支持C++11或更高版本,或者引入Boost库。 在"VC greta"错误中,"greta"可能是指一个特定的项目名称或者函数,错误可能是由于语法错误、不兼容性或其他编程问题导致的。为了解决...
greta-2.6.4-vc6是一个针对Visual C++ 6.0编译环境的正则表达式库,它提供了一种高效且灵活的方式来处理字符串中的模式匹配问题。这个库包含了一系列的源代码文件,如regexpr2.cpp、syntax2.cpp、reimpl2.h、regexpr...
本文将深入探讨一个基于C++,利用MS的greta库和SkinMagic库,并在MFC(Microsoft Foundation Classes)框架下开发的头文件转源文件工具。 首先,我们要理解这个工具的核心功能:将头文件中的内容转换为源文件。这个...
兼容性强,能在 vc6, vc7, vc8, gcc, Turbo C++ 等大多数 C++ 环境编译。 支持命名分组,条件表达式,递归表达式等多种高级特性。(1.2版本新特点) 与 GRETA、boost 相比,DEELX 独到之处: 完全使用模版库编写,...
兼容性强,能在 vc6, vc7, vc8, gcc, Turbo C 等大多数 C 环境编译。 支持命名分组,条件表达式,递归表达式等多种高级特性。(1.2版本新特点) 与 GRETA、boost 相比,DEELX 独到之处: 完全使用模版库...
兼容性强,能在 vc6, vc7, vc8, gcc, Turbo C++ 等大多数 C++ 环境编译。 支持命名分组,条件表达式,递归表达式等多种高级特性。(1.2版本新特点) 与 GRETA、boost 相比,DEELX 独到之处: 完全使用模版库编写...
兼容性强,能在 vc6, vc7, vc8, gcc, Turbo C++ 等大多数 C++ 环境编译。 支持命名分组,条件表达式,递归表达式等多种高级特性。(1.2版本新特点) 与 GRETA、boost 相比,DEELX 独到之处: 完全使用模版库编写...
兼容性强,能在 vc6, vc7, vc8, gcc, Turbo C++ 等大多数 C++ 环境编译。 支持命名分组,条件表达式,递归表达式等多种高级特性。(1.2版本新特点) 与 GRETA、boost 相比,DEELX 独到之处: 完全使用模版库编写,...
在VC++环境下开发爬虫,开发者需要熟悉标准C++库,以及可能用到的第三方库,如libcurl(用于HTTP通信)或pcre(Perl兼容正则表达式库)。此外,理解Windows API和多线程编程也是必要的,因为爬虫通常需要并发地处理...
在VC++中,可以使用标准库中的`std::regex`类进行正则表达式的编译、匹配和查找操作。 获取到图片URL后,程序会发起新的网络请求,下载这些图片。为了防止因网络延迟或服务器限制导致的问题,爬虫通常会包含重试...