Delphi中正则表达式之TPerlRegEx类的属性与方法(7) Split函数

//字符串分割: Split

var
 reg: TPerlRegEx;
 List: TStrings;
begin
 List := TStringList.Create;
 reg := TPerlRegEx.Create(nil);
 reg.Subject := 'aaa,bbb,ccc,ddd';
 reg.RegEx  := ','; {这里可是运行相当复杂的分割符啊}
 reg.Split(List,MaxInt); {第一个参数读入的是 Subject; 第二个参数是分成 多少份}
 { 输入一个最大整数, 表示能分多少就分多少}
 ShowMessage(List.Text);
 {返回:
  aaa
  bbb
  ccc
  ddd
 }
 FreeAndNil(reg);
 List.Free;
end;

时间: 2024-12-31 16:53:24

Delphi中正则表达式之TPerlRegEx类的属性与方法(7) Split函数的相关文章

Delphi中正则表达式之TPerlRegEx类的属性与方法(6) EscapeRegExChars函数

// EscapeRegExChars 函数可以自动为特殊字符加转义符号 \ var reg: TPerlRegEx; begin reg := TPerlRegEx.Create(nil); reg.Subject := 'C++Builer'; reg.RegEx := reg.EscapeRegExChars('C+') + '{2}'; {相当于 'C\+{2}'} reg.Replacement := '◆'; reg.ReplaceAll; ShowMessage(reg.Subje

Delphi中正则表达式之TPerlRegEx类的属性与方法(2) 关于子表达式

// MatchedExpression 与 SubExpressions[0] var reg: TPerlRegEx; begin reg := TPerlRegEx.Create(nil); reg.Subject := 'CodeGear Delphi 2007'; reg.RegEx := 'Delphi'; while reg.MatchAgain do begin ShowMessage(reg.MatchedExpression); //Delphi; 这是匹配到的内容 Show

Delphi中正则表达式之TPerlRegEx类的属性与方法(1) 查找

//查找是否存在 var reg: TPerlRegEx; begin reg := TPerlRegEx.Create(nil); reg.Subject := 'CodeGear Delphi 2007 for Win32'; reg.RegEx := '\d'; if reg.Match then ShowMessage('找到了') else ShowMessage('没找到'); FreeAndNil(reg); end; //查找是否存在(方法2) var reg: TPerlReg

Delphi中正则表达式之TPerlRegEx类的属性与方法(5) Compile、Study

// Compile.Study var reg: TPerlRegEx; begin reg := TPerlRegEx.Create(nil); reg.RegEx := 'ab'; reg.Options := [preCaseLess]; reg.Compile; {编译表达式} reg.Study; {Study 方法会检查是否编译, 如果没有编译则执行 Compile} reg.Replacement := '◆'; reg.Subject := 'abAbaB'; reg.Repl

Delphi中正则表达式之TPerlRegEx类的属性与方法(4) Replace

// Replace var reg: TPerlRegEx; begin reg := TPerlRegEx.Create(nil); reg.RegEx := 'ab'; reg.Replacement := '◆'; reg.Subject := 'ababab'; reg.ReplaceAll; ShowMessage(reg.Subject); //返回: ◆◆◆ reg.Subject := 'ababab'; //下面四行程序, 相当于 reg.ReplaceAll; while

Delphi中正则表达式之TPerlRegEx类的属性与方法(3) Start、Stop

//设定搜索范围: Start.Stop var reg: TPerlRegEx; begin reg := TPerlRegEx.Create(nil); reg.Subject := 'ababab'; reg.RegEx := 'ab'; reg.Replacement := '◆'; reg.Start := 1; reg.Stop := 2; while reg.MatchAgain do begin reg.Replace; end; ShowMessage(reg.Subject)

在delphi中如何动态建立类的实例

本文为原创,如需转载,请注明作者和出处,谢谢!     在面向对象语言中,用两种方法建立类的实例:静态建立和动态建立.静态建立就是在程序中显式地建立类的实例,如c1 = TClass1.Create().而动态建立是在只知道类名的前题下建立类的实例.动态建立在实现上要比静态建立更灵活,因为动态建立无需引用被建立 类,并且更容易实现如多态等面向对象特性. 一.    动态建立类的实例 在delphi中动态建立类的实例可分为4步. 1. 声明一个从TPersistent继承的类.因为在注册类时要求必

Delphi中正则表达式语法(8) 引用子表达式

//准备: 我们先写一个搜索所有英文单词的表达式 var reg: TPerlRegEx; begin reg := TPerlRegEx.Create(nil); reg.Subject := 'one two three four five six seven eight nine ten'; reg.RegEx := '\b[A-Za-z]+\b'; //这个表达式就可以找到所有的英文单词 reg.Replacement := '◆'; reg.ReplaceAll; ShowMessag

Delphi中正则表达式语法(10) 选项

// preCaseLess: 不区分大小写, 相当于其他语言中的 i var reg: TPerlRegEx; begin reg := TPerlRegEx.Create(nil); reg.Subject := 'abc ABC aBc'; reg.RegEx := 'abc'; reg.Replacement := '◆'; reg.Options := [preCaseLess]; //选项是集合类型的 reg.ReplaceAll; ShowMessage(reg.Subject);