您的位置:首页 > 编程语言 > Delphi

Delphi 正则表达式 起步

2010-11-02 17:30 399 查看
在 Delphi 中使用正则表达式, 目前 PerlRegEx 应该是首选, 准备彻底而细致地研究它.

官方网站: http://www.regular-expressions.info/delphi.html
直接下载: http://www.regular-expressions.info/download/TPerlRegEx.zip

安装方法:

1、先把解压的 TPerlRegEx 文件夹放一个合适的地方, 我放在了 Delphi 的 Imports 目录中.

2、目前最新 For Win32 的版本是对 Delphi 2006 的, 2007 也能用.
打开 PerlRegExD2006.dpk, 提示缺少资源文件, 没关系;
在 Project Manager 窗口中的 PerlRegExD2006.bpl 上点击右键, 执行 Install;
这时在 Tool Palette 的列表中已经有了 TPerlRegEx, 在 JGsoft 组.

3、Tools -> Options -> Environment Options -> Delphi Options -> Library-Win32 -> Library path ->
添加路径: ...\Imports\TPerlRegEx

4、可以使用了! 直接 uses PerlRegEx 或从 Tool Palette 添加都可以.
如果不喜欢 Tool Palette 的添加方式可以省略第二步.

计划的学习步骤: 1、正则语法; 2、TPerlRegEx 功能.



unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;

type
TForm1 = class(TForm)
Memo1: TMemo;
GroupBox1: TGroupBox;
Edit1: TEdit;
Label1: TLabel;
Edit2: TEdit;
Label2: TLabel;
Button1: TButton;
Button2: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}
//先测试一下:
uses
PerlRegEx; //uses 正则表达式单元
procedure TForm1.Button1Click(Sender: TObject);
var
reg: TPerlRegEx; //声明正则表达式变量
begin
reg := TPerlRegEx.Create; //建立,D7下貌似不能TPerlRegEx.Create(nil)
if Memo1.Text <> '' then  //如果源字符串为空将会出错,所以加判断语句
begin
reg.Subject := Memo1.Text;    //这是要替换的源字符串,例如'sSsS'
reg.RegEx := Edit1.Text;       //这是表达式, 在这里是准备替换掉的子串,例如's'
reg.Replacement := Edit2.Text;  //要替换成的新串,例如'◆'
reg.ReplaceAll;           //执行全部替换

ShowMessage(reg.Subject); //用消息框显示替换结果: ◆S◆S
Memo1.Text:=reg.Subject;  //用memo显示替换结果
end
else
reg.Free; //D7下貌似不能 FreeAndNil(reg)
end;

procedure TForm1.Button2Click(Sender: TObject); //清空
begin
Memo1.Clear;
Edit1.Clear;
Edit2.Clear;
end;

end.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: