• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >正则表达式 > .NET 正则表达式使用高级技巧之替换类介绍

.NET 正则表达式使用高级技巧之替换类介绍

作者: 字体:[增加 减小] 来源:互联网 时间:2017-05-11

通过本文主要向大家介绍了.net 正则表达式,vb.net 正则表达式,net正则表达式教程,.net 正则,vb.net 正则替换等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
\d表示什么,{,5}表示什么,\[表示什么……,这里我只想提醒大家一点,为了避免和反向引用相冲突,在你用\nn表示八进制的ASCII码时,请在\后加0,就是说,\40在表示ASCII码时,请这样写\040。  </div>   替换 </div> </div>   Regex类有一个静态的Replace方法,其实例也有一个Replace方法,这个方法很强大,因为它可以传入一个delegate,这样,你可以自定义每次捕获匹配时,如何处理捕获的内容。</div>  </div>   以上这段代码说明了如果使用delegate MatchEvaluator 来处理正则的Match结果,该代码返回"01 12 03 05"。Replace方法除了使用delegate来处理捕获的Match,还可以用字符串来替换Match的结果,而用字符串来替换Match结果除了把Match结果静态的替换成一个固定的文本外,还可以使用以下语法来更方便的实现你需要的功能: </div> </div>


$number

  把匹配的第number组替换成替换表达式,还有这句话怎么写也表达不清楚意思,还是来个例子吧:

 public static void Main() 
 { 
 string s = "1 12 3 5"; 
 s = Regex.Replace(s,@"(\d+)(?#这个是注释)","0$1",RegexOptions.Compiled|RegexOptions.IgnoreCase); 
 Console.WriteLine(s); 
 Console.ReadLine(); 
 }

  这段代码返回的是 “01 012 03 05” 

  就是说,对组一的每个匹配结果都用"0$1"这个表达式来替换,"0$1"中"$1"由组1匹配的结果代入

${name}   把匹配的组名为"name"的组替换成表达式, 

  上例的Regex expression改成@"(?<name>\d+)(?#这个是注释)"后面的替换式改为"0${name}"结果是一样的
$$   做$的转义符,如上例表达式改成@"(?<name>\d+)(?#这个是注释)"和"$$${name}",则结果为"$1 $12 $3 $5"
$&   替换整个匹配
$`   替换匹配前的字符
$'   替换匹配后的字符
$+   替换最后匹配的组
$_   替换整个字符串
  
  后面的选项,大家自己写个例子体味一下。 

  *注,上例中的(?#这个是注释)说明了正则的内联注释语法为(?#) 

  表达项选项 

  正则表达式选项RegexOptions有如下一下选项,详细说明请参考联机帮助 

RegexOptions枚举值 内联标志 简单说明
ExplicitCapture n 只有定义了命名或编号的组才捕获
IgnoreCase i 不区分大小写
IgnorePatternWhitespace x 消除模式中的非转义空白并启用由
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • .NET 正则表达式使用高级技巧之替换类介绍

相关文章

  • 2017-05-11验证注册用户名必须为字母
  • 2017-05-11一个验证用户名的正则表达式
  • 2017-05-11PBlog2 公用JS代码
  • 2017-05-11求个简单正则
  • 2017-05-11常用的正则表达式大全(数字、字符、固定格式)
  • 2017-05-11Java 正则表达式匹配模式(贪婪型、勉强型、占有型)
  • 2017-05-11正则表达式匹配解析过程探讨分析(正则表达式匹配原理)
  • 2017-05-11php匹配网址的正则 几乎可以匹配任何网址
  • 2017-05-11正则表达式教程之模式修正符使用介绍
  • 2017-05-11jb51用的ubb转换 原创

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 正则表达式详述 三
    • 正则表达式零宽断言详解
    • 密码强度检测函数(正则)
    • php 正则表达式的子模式详解
    • js取得参数代码
    • grep用法详解 grep与正则表达式
    • 学习正则!超基础简单例子
    • 正则表达式不包含属性
    • 正则表达式单行、多行模式简介(使用说明)
    • asp.net 正则表达式的应用

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有