.NET中的System.Text.RegularExpressions.Regex类是非常好用的一个类。

最近在使用Regex.Replace(…)方法时,对于替换字符串中使用的“$0”,“$1”等东西比较迷糊。在网上简单搜索了一下,没有找到什么好的回答。

于是,自己摸索了一下,原来如此啊

我们先看如下代码:

            string pattern = "Tom";var input = "Tom is not tom.";// I wanna to replace 'Tom' to 'Tomas'var output = Regex.Replace(input, pattern, "$0as");Console.WriteLine(output);

在替换字符串参数中,使用了“$0”,意思就是将匹配到的字符串作为替换字符串的一部分,上例中,匹配到”Tom”,然后就会被替换为“Tomas”。

另外,替换对于“$1”,又是什么意思呢?看下面的例子:

            string pattern = "CLR (via) C#";var input = "I like 'CLR via C#'";// I wanna to replace 'CLR via C#' to 'Windows via C++'var output = Regex.Replace(input, pattern, "Windows $1 C++");Console.WriteLine(output);

上例中使用了“$1”,在进行替换操作的时候“$1”代表的就是正则表达式中第一个加小括号的部分,即“via”。

在实际的工作中,使用“$0”,“$1”,有时会起到不错的效果。

转载于:https://www.cnblogs.com/quark/archive/2011/07/16/2108076.html

.NET 正则表达式’$’符号的使用相关推荐

  1. 正则表达式符号特殊详解_常用正则表达式_Java中正则表达式的使用

    正则表达式符号详解 限定符: 指定一个组件必须出现多少次才能满足. 1.使用 "*", "+", "?" 作为限定符: "*&qu ...

  2. linux的特殊符号与正则表达式

    第1章 linux的特殊符号 1.1 通配符 * {} 1.1.1 含义 方便查找文件 通配符是用来找文件名字的. 1.1.2  * 通过find 命令找以 .sh 结尾的文件,使用*替代文件名字. ...

  3. 密码包含字母、数字、特殊符号正则表达式

    密码包含字母.数字.特殊符号正则表达式 1.包含字母,不区分大小写 Pattern.compile("^(?=.*\\d)(?=.*[a-zA-Z])(?=.*[~!@#$%^&*] ...

  4. sublime中符号替换成换行/正则表达式

    目录 换行符 正则表达式 换行符 快捷键打开替换窗口option+com+f(mac) 在replace with中输入ctr+shift+enter(mac) 正则表达式

  5. linux显示文件中特殊字符,Linux中的特殊符号与正则表达式

    第1章 linux的特殊符号 1.1 通配符 * {} 1.1.1 含义 方便查找文件 通配符是用来找文件名字的. 1.1.2  * 通过find 命令找以 .sh 结尾的文件,使用*替代文件名字. ...

  6. 符号之间,记住你所需要的正则表达式

    在sql语言中一般使用正则表达式过滤数据 01or的关系 a|b 结果=字段1(包含a)+字段2(包含b) 意思是字段中有a或者b都可以 SELECT * FROM student.re WHERE ...

  7. awk 使用正则表达式_如何在awk中使用正则表达式

    awk 使用正则表达式 在awk中,正则表达式(regex)允许动态和复杂的模式定义. 您不仅限于搜索简单的字符串,而且还搜索模式中的模式. 使用正则表达式匹配awk中的行的语法为: word ~ / ...

  8. 手机号正则_一起刷题学习正则表达式

    在我最开始学习正则表达式的时候看到一堆符号简直头晕,所以很长一段时间我都是百度一下某某正则怎么写,比如:匹配所有手机号码的正则,但是有时候工作中碰到的一些问题网上搜不到,这就尴尬了,后面还是逼着自己花 ...

  9. linux用shell写正则表达式,Linux命令行与Shell脚本编程大全-shell正则表达式

    本章内容: 定义正则表达式 了解基本正则表达式 扩展正则表达式 创建正则表达式 定义正则表达式 正则表达式是你定义的.Linux工具用来过滤文本的模式模板.正则表达式模式利用通配符来代表数据流中的一个 ...

  10. r语言正则表达式_R中的正则表达式

    r语言正则表达式 Regular expressions in R or a regex are a sequence of special characters that are defined t ...

最新文章

  1. 列举数据挖掘领域的十大挑战问题
  2. LeetCode H-Index II(二分法)
  3. 在vim中设置将tab自动转化为4个空格
  4. UA MATH524 复变函数6 Green定理与Green公式
  5. 查看winpe系统的语言版本
  6. Extjs4 MVC 添加view层
  7. 如何获取filecoin_获得Filecoin币有哪些条件?
  8. Shell脚本语言常用命令总结~
  9. Machine Learning System Design的一道题
  10. 执行流程 | 你真的了解Spring AOP的执行顺序吗?
  11. oracle整张表转置,从Oracle表格行列转置说起...
  12. 银联的bankall_阿尔法银行罗马尼亚分行开始受理银联卡
  13. BZOJ3028 食物
  14. win2003域迁移实战记录
  15. Java中的数组和List
  16. Tensflow的equal函数
  17. vb改变字形的代码是什么_VB里什么代码可以把文本框中的字改成斜体
  18. otsu阈值分割算法原理_局部阈值分割算法总结
  19. Unity太空大战游戏-Socket网络通信教学示例
  20. python实现12306余票

热门文章

  1. 向vSphere迁移虚拟机,Converter需要升级至4.0.1
  2. Java的类装载器(Class Loader)和命名空间(NameSpace)
  3. MATLAB 画图时插入图例
  4. Xilinx FFT IP core V9.0的介绍和使用
  5. 武汉大专计算机专业分数线,武汉专科大学有哪些 2019武汉专科大学排名及分数线...
  6. leetcode算法第8题
  7. C++基础——类继承
  8. 为什么我们要做三份 Webpack 配置文件
  9. 安装 WordPress 时一些常见问题
  10. LINUX CentOS6.8 wdcp面板安装