本文作者:icy

Delphi-YuPcre 实现 Perl 兼容的正则表达式(Regular Expression)

icy 昨天 23 抢沙发
Delphi-YuPcre 实现 Perl 兼容的正则表达式(Regular Expression)摘要: YuPcre YuPcre(全称 YuPCRE2)是一个 Delphi 库,提供组件和过程实现 Perl 兼容的正则表达式(Regular Expression)模式匹配,使用与...

Delphi-YuPcre 实现 Perl 兼容的正则表达式(Regular Expression)

YuPcre

YuPcre(全称 YuPCRE2)是一个 Delphi 库,提供组件和过程实现 Perl 兼容的正则表达式(Regular Expression)模式匹配,使用与 Perl 相同的语法和语义,仅有少量差异。它基于 PCRE2(Perl Compatible Regular Expressions 2)引擎,支持 Delphi 开发环境,适用于文本处理、数据验证和模式搜索等场景。

主要特点

  • 算法支持:提供两种匹配算法——标准 Perl 算法(类似于 Perl 和 JavaScript)和 DFA(Deterministic Finite Automaton)算法,后者更高效且无回溯限制。

  • 核心功能

    • 匹配与替换:如 Match、Replace(类似于 Delphi 的 StringReplace,但更灵活,支持捕获组)。

    • 提取与收集:List 函数可一次性提取多个匹配项(如电话号码、邮箱或 URL)。

    • 组件集成:包含正则表达式掩码编辑器 TDIRegEx2MaskEdit 和组合框 TDIRegEx2ComboBox,支持实时验证输入。

    • 性能优化:支持 Unicode、多字节字符串和编译时优化;1.6.0 版本重构了匹配器,避免递归调用,提高栈安全性。

  • 平台兼容:支持 Delphi 7 至 XE10.2(Win32/Win64),后续版本可能扩展至更高 Delphi(如 10.3+)。

  • 开源与免费:由开发者 Yuri Artyukh 维护,免费分发(非商业开源),包含示例和演示应用。

  • 优势:比 Delphi 内置的 TStringHelper.Regex 方法更强大,提供更多 Perl-like 功能,适合复杂模式匹配。

#### 安装与使用 1. 从 Delphi 第三方库站点下载 YuPcre2 ZIP 文件(约 4.5 MB)。 2. 解压到 Delphi 组件路径(如 C:\Program Files (x86)\Embarcadero\Studio\xx.0\lib)。 3. 在 Delphi IDE 中安装包(Project > Install Packages),编译后在调色板中出现 YuPcre2 组件。 4. 示例代码:

   uses YuPCRE2;
   var
   Regex: TDIRegEx2;
   Matches: TDIRegEx2StringArray;
   begin
   Regex := TDIRegEx2.Create('(\w+)@(\w+)\.com');
   if Regex.Match('email@example.com', Matches) then
   ShowMessage(Format('User: %s, Domain: %s', [Matches[1], Matches[2]]));
   Regex.Free;
   end;
  1. 如需 DFA 模式,设置 Regex.MatchOptions := [moDfa];。 YuPcre 是 Delphi 正则处理的有力工具,尤其适合迁移 Perl 脚本或处理大量文本数据。

YuPcre2 v1.26.0 for Delphi 11-13 Florence Full Source.zip
类型:压缩文件|已下载:1|下载方式:免费下载
立即下载
文章版权及转载声明

作者:icy本文地址:https://zelig.cn/2025/11/151.html发布于 昨天
文章转载或复制请以超链接形式并注明出处软角落-SoftNook

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏

阅读
分享

发表评论

快捷回复:

验证码

评论列表 (暂无评论,23人围观)参与讨论

还没有评论,来说两句吧...