首页 > 代码库 > Delphi 正则表达式语法(7): 匹配转义字符

Delphi 正则表达式语法(7): 匹配转义字符

Delphi 正则表达式语法(7): 匹配转义字符

// ? 号的意义是匹配 0-1 次, 如果需要匹配 ? 怎么办var  reg: TPerlRegEx;begin  reg := TPerlRegEx.Create(nil);  reg.Subject := ‘你好吗? 还行!‘;  reg.RegEx   := ‘\?|!‘; // 加转义用的 \  reg.Replacement := ‘◆‘;  reg.ReplaceAll;  ShowMessage(reg.Subject); //返回: 你好吗◆ 还行◆  FreeAndNil(reg);end;

//乱用转义符号 \ 有时是可以的, 但有时会出问题, 最好不要乱用var  reg: TPerlRegEx;begin  reg := TPerlRegEx.Create(nil);  reg.Subject := ‘你好吗? 还行!‘;  reg.RegEx   := ‘\?|\!|\好‘; // 给没必要的 "!" 与 "好" 加了 \ 在本例中也正常了  reg.Replacement := ‘◆‘;  reg.ReplaceAll;  ShowMessage(reg.Subject); //返回: 你◆吗◆ 还行◆  FreeAndNil(reg);end;{ 本来是有一个选项 [preExtra] 禁止乱用的, 但效果不好}

正则表达式中的特殊字符表: 

 特殊字符 在正则表达式中的意义 匹配字符本身 
^匹配字符串的开始,或不匹配 [] 中的内容\^
$匹配字符串的结尾\$
( 和 )标记子表达式\( 和 \)
[ 和 ]匹配"多种字符" 的表达式\[ 和 \]
{ 和 }匹配次数的符号\{ 和 \}
.匹配除换行符以外的所有字符\.
?匹配 0 次或 1 次\?
+匹配至少 1 次\+
*匹配 0 次或任意次\*
|\|
\转义符号本身\\

Delphi 正则表达式语法(7): 匹配转义字符