Delphi VCL是否提供正则表达式库?

时间:2009-09-10 20:32:18

标签: regex delphi delphi-2009

VCL中是否有正则表达式的库?

如果没有,你能推荐一个好的第三方图书馆。

7 个答案:

答案 0 :(得分:8)

从Delphi XE开始,RTL包含对正则表达式的支持:

http://docwiki.embarcadero.com/RADStudio/en/VCL_and_RTL_Changes_for_XE

  

RegularExpressions.TRegEx是主要的   记录供用户匹配和   用正则表达式替换。该   RegularExpressions部门的成员   弥补一个非常接近的界面   MSDN接口,......

  

RegularExpressionsCore.TPerlRegEx   实现Perl兼容的常规   表达式   (http://www.regular-expressions.info/pcre.html)。

答案 1 :(得分:5)

Delphi不在VCL中提供正则表达式库。

有一些第三方正则表达式单位。

DIRegExp

TRegExpr 2(网站截止日期为2009年9月22日)

答案 2 :(得分:5)

Jedi代码库(JCL)提供基于perl的正则表达式。 从this link下载JCL。

安装后转到安装文件夹/ source / common,你有JclPCRE.pas和pcre.pas

答案 3 :(得分:4)

请参阅TPerlRegExdownload),即使它只是PCRE的包装。

答案 4 :(得分:3)

其他人提到,没有一个“在盒子里”。但是,当我们说“我们可以在IDE / VCL中使用regexp”时,我们需要小心,因为两个不同的人要求这可能有两个非常不同的想法which regexp they want to see supported

因此,虽然有一种regexp支持“内置”可能会很好,但你必须意识到,当人们开始交换正则表达式食谱(与其他人不使用Delphi)并且无法计算时,这会导致问题为什么一个人的有效正则表达式不是Delphi中的有效正则表达式。

那么它将是“regexp在Delphi中被破坏”或“为什么我们不能拥有XYZ regexp支持以及ABC风味支持?”

所以目前我说选择关于哪个正则表达式适合你在某种程度上是一个优势,假设你可以找到支持这种风格的Delphi组件/库。 :)

The regular-expressions.info site also has a page specifically about Delphi support for regexp

答案 5 :(得分:1)

RegEx是Delphi中没有的另一件事。也许你试试PCRE-based Components for Delphi (我自己没试过)。

几年前我使用过TRegExp(由sdu提到),但现在link似乎已经死了。好奇...

答案 6 :(得分:0)

如果您打算使用Jedi代码库(JCL),您仍需要安装PCRE库。