首页 > 代码库 > Delphi 正则表达式语法(4): 常用转义字符与 .

Delphi 正则表达式语法(4): 常用转义字符与 .

Delphi 正则表达式语法(4): 常用转义字符与 .

// \d 匹配所有数字, 相当于 [0-9]var  reg: TPerlRegEx;begin  reg := TPerlRegEx.Create(nil);  reg.Subject := ‘期待Delphi 2008 for Win32!‘;  reg.RegEx   := ‘\d‘;  reg.Replacement := ‘◆‘;  reg.ReplaceAll;  ShowMessage(reg.Subject); //返回: 期待Delphi ◆◆◆◆ for Win◆◆!  FreeAndNil(reg);end;

// \D 匹配所有非数字, 相当于 [^0-9]var  reg: TPerlRegEx;begin  reg := TPerlRegEx.Create(nil);  reg.Subject := ‘期待Delphi 2008 for Win32!‘;  reg.RegEx   := ‘\D‘;  reg.Replacement := ‘◆‘;  reg.ReplaceAll;  ShowMessage(reg.Subject); //返回: ◆◆◆◆◆◆◆◆◆◆◆2008◆◆◆◆◆◆◆◆32◆◆  FreeAndNil(reg);end;

// \w 匹配字母、数字与下划线_, 相当于 [A-Za-z0-9_]var  reg: TPerlRegEx;begin  reg := TPerlRegEx.Create(nil);  reg.Subject := ‘期待Delphi 2008 for Win32!‘;  reg.RegEx   := ‘\w‘;  reg.Replacement := ‘◆‘;  reg.ReplaceAll;  ShowMessage(reg.Subject); //返回: 期待◆◆◆◆◆◆ ◆◆◆◆ ◆◆◆ ◆◆◆◆◆!  FreeAndNil(reg);end;

// \W 匹配非字母、数字与下划线_, 相当于 [^A-Za-z0-9_]var  reg: TPerlRegEx;begin  reg := TPerlRegEx.Create(nil);  reg.Subject := ‘期待Delphi 2008 for Win32!‘;  reg.RegEx   := ‘\W‘;  reg.Replacement := ‘◆‘;  reg.ReplaceAll;  ShowMessage(reg.Subject); //返回: ◆◆◆◆Delphi◆2008◆for◆Win32◆◆  FreeAndNil(reg);end;

// \s 匹配任何空白, 包括空格、制表、换页等, 相当于 [\f\n\r\t\v]var  reg: TPerlRegEx;begin  reg := TPerlRegEx.Create(nil);  reg.Subject := ‘期待Delphi 2008 for Win32!‘;  reg.RegEx   := ‘\s‘;  reg.Replacement := ‘◆‘;  reg.ReplaceAll;  ShowMessage(reg.Subject); //返回: 期待Delphi◆2008◆for◆Win32!  FreeAndNil(reg);end;{  \f : 换页符  \n : 换行符  \r : 回车符  \t : 制表符(Tab)  \v : 垂直制表符}

// \S 匹配任何非空白, 相当于 [^\f\n\r\t\v]var  reg: TPerlRegEx;begin  reg := TPerlRegEx.Create(nil);  reg.Subject := ‘期待Delphi 2008 for Win32!‘;  reg.RegEx   := ‘\S‘;  reg.Replacement := ‘◆‘;  reg.ReplaceAll;  ShowMessage(reg.Subject); //返回: ◆◆◆◆◆◆◆◆◆◆ ◆◆◆◆ ◆◆◆ ◆◆◆◆◆◆◆  FreeAndNil(reg);end;

// \x 匹配十六进制的 ASCIIvar  reg: TPerlRegEx;begin  reg := TPerlRegEx.Create(nil);  reg.Subject := ‘CodeGear Delphi‘;  reg.RegEx   := ‘\x61‘; // a 的 ASCII 值是 97, 也就是十六进制的 61  reg.Replacement := ‘◆‘;  reg.ReplaceAll;  ShowMessage(reg.Subject); //返回: CodeGe◆r Delphi  FreeAndNil(reg);end;//非常遗憾 TPerlRegEx 不能使用 \u 或 \U 匹配 Unicode 字符!

// . 匹配除换行符以外的任何字符var  reg: TPerlRegEx;begin  reg := TPerlRegEx.Create(nil);  reg.Subject := ‘期待‘ + #10 + ‘Delphi 2008 for Win32!‘; //#10是换行符  reg.RegEx   := ‘.‘;  reg.Replacement := ‘◆‘;  reg.ReplaceAll;  ShowMessage(reg.Subject);  {返回:    ◆◆◆◆    ◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆  }  FreeAndNil(reg);end;

Delphi 正则表达式语法(4): 常用转义字符与 .