正则表达式$的使用

先来个案例

对字符串  123%34_2%_%_2_2

要求替换字符串的     %  _   (斜杠、百分号、下划线), 替换为 \% \_ \

要求结果为   12\3\%34\_2\%\_\%\_2\_2

写法

sting key="123%34_2%_%_2_2";
key=Regex.Replace(Regex.Replace(key, @"[\_%]", @"$0");

个人理解  

$0 表示全匹配

$1 表示第一个括号内容

$2 第二个括号

$...以此类推 (注意,出现索引超出,$就会变成普通字符)

123abc456

(d+)(D+)(d+)

匹配结果:全匹配

替换为 $0 结果,123abc456

替换为 $1 结果,整个匹配项,替换成  第一个括号内容了  ,也就是 123

替换为 $2 结果,整个匹配项,替换成  第2个括号内容了  ,也就是 abc

替换为 $5 结果,整个匹配项,替换成  普通字符 $5  ,也就是 $5

原文地址:https://www.cnblogs.com/wdw31210/p/5659609.html