分享

官方的正则表达式组件 RegularExpressions (3) : TMatchEva...

 独孤求财 2012-03-27

unit Unit1;

interface

uses
  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; //TMatchEvaluator = function(const Match: TMatch): string of object;
  public
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

const
  pattern = '[A-Z]+\d+';
  txt = 'AAA1 BBB2 AA11 BB22 A111 B222 AAAA';

procedure TForm1.Button1Click(Sender: TObject);
begin
  Memo1.Text := TRegEx.Replace(txt, pattern, MyMatchEvaluator); //aaa1 bbb2 aa11 bb22 a111 b222 AAAA
end;

function TForm1.MyMatchEvaluator(const Match: TMatch): string;
begin
  Result := LowerCase(Match.Value);
end;

end.

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多