摘要: unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, RegularExpressions;type TForm1 = class(TForm) Memo1: TMemo; Button1: TButton; procedure Button1Click(Sender: TObject); private function MyMatchEvaluator(const Match: TMatch): string 阅读全文
posted @ 2011-03-28 22:36 万一 阅读(3887) 评论(5) 推荐(1) 编辑
摘要: uses RegularExpressions;const pattern = '([A-Z]+)(\d+)'; //其三个子表达式分别是:[A-Z]+\d+ [A-Z]+ \d+ txt = 'AAA1 BBB2 AA11 BB22 A111 B222 AAAA'; //测试用的目标文本procedure TForm1.Button1Click(Sender: TObject);var match: TMatch; group: TGroup; groups: TGroupCollection;begin match := TRegEx.Match(txt, 阅读全文
posted @ 2011-03-28 21:42 万一 阅读(4659) 评论(0) 推荐(0) 编辑
摘要: 刚刚试了一下 DelphiXE 新增的正则表达式组件, 它基于 C 语言编写的 PCRE 库实现, 感觉设计的非常好。其主要的 TRegEx 被设计为一个结构(而不是类), 可能是基于效率的考虑;不过它主要调用了 TPerlRegEx 类的功能。TRegEx 的五个主要方法 IsMatch()、Match()、Matches()、Replace()、Split() 都有相应的 class 方法,所以一般情况下根本不需要手动实例化对象,直接使用 class 方法就够了。另:关于表达式语法可参加 Perl 5 的相关介绍。uses RegularExpressions; //相关单元const p 阅读全文
posted @ 2011-03-28 20:55 万一 阅读(11010) 评论(4) 推荐(2) 编辑