正则表达式默认情况下实现的是最大化匹配,这在有些情况下是非常不愿意出现的,比如下面这段代码:

# starting IndiaInventoryAPP.exe" ~~DisplayVariableValues "parameterGroup,mailRecipients,ModuleArgs"~DisplayVariableValues "LogFolder"~$binaryExitCode = 0~~$IndiaInventoryArgs = "-asWin32Console -S HKDRMSUAT3 -D $DatabaseName -U $DatabaseUserName -P $DatabasePassword -L $LogFolder -MailRecipients $mailRecipients -T $today_yyyy -Z D:\cs48516\posIds.txt"~ExecuteBinaryCommand ([ref]$binaryExitCode) "$applicationPath/IndiaInventoryAPP.exe" $IndiaInventoryArgs $true~

我们想匹配#与~中间的任何文字,实现最小匹配的方法就是利用(?i)

下面是具体实现方法:

        string commentGrammer = @"(?i)\#.*?~";            Regex commentRegex = new Regex(commentGrammer,RegexOptions.IgnoreCase|RegexOptions.Singleline);            MatchCollection commentMC = commentRegex.Matches(input);foreach (Match match in commentMC)            {int length = match.Length;int index = match.Index;                richTextBox.Select(index, length);                richTextBox.SelectionColor = Color.Green;            }

正则表达式实现最小匹配相关推荐

  1. java 正则最小匹配_正则表达式实现最小匹配功能的方法

    本文实例讲述了正则表达式实现最小匹配功能的方法.分享给大家供大家参考,具体如下: 正则表达式默认情况下实现的是最大化匹配,这在有些情况下是非常不愿意出现的,比如下面这段代码: # starting I ...

  2. ruby中正则表达式最小匹配与最大匹配

    正则表达式中,默认的是最大匹配,即贪婪模式,但有些时候,要最小匹配, 请看下面的例子:(ruby) str = "abbbbbdwwdwwwede" puts str[/a.*(d ...

  3. python正则匹配找到所有的浮点数_Python随笔17:Python正则表达式基础(4):贪婪匹配和最小匹配...

    Python正则表达式 贪婪匹配/最小匹配 Re库默认采用贪婪匹配,即匹配最长的子字符串.在量词后面加一个"?",即可由贪婪匹配化为最小匹配. '*'用于将前面的模式匹配0次或多次 ...

  4. 正则表达式(附匹配手机号和HTML标签)

    介绍正则表达式 正则表达式: 又称规则表达式.计算机科学的一个概念.正则表达式通常被用来检索.替换那些符合某个模式(规则)的文本.许多程序设计语言都支持利用正则表达式进行字符串操作.例如,在Perl中 ...

  5. 【python】常见的正则表达式用法;匹配字符串

    本文仅仅展现了python正则表达式中的一小部分内容,但是包含了实际应用中非常被频繁使用的例子,本文重在举例,即不需要相关语法知识就能够会用~ 目录 re.match() re.findall() 匹 ...

  6. 正则表达式三种匹配模式:贪婪模式,勉强模式,占有模式的区别

    正则表达式一共有三种模式:贪婪模式.勉强模式.侵占模式. 我在做项目的时候,曾领教过正则"回溯陷阱"的厉害,所以,今天做个总结下正则常见的两种模式的区别: [贪婪模式]:正则表达式 ...

  7. C#正则表达式的完全匹配、部分匹配及忽略大小写的问题

    原文:C#正则表达式的完全匹配.部分匹配及忽略大小写的问题 问题的提出 根据用户给定表达式,里面含有各种数学函数,如求绝对值,三角函数,平方.开方等,分别以类似ABS(表达式),Sin(表达式),AS ...

  8. js 正则表达式奇偶字符串替换_Python中的正则表达式及其常用匹配函数用法简介...

    今 日 鸡 汤 此曲只应天上有,人间难得几回闻. /1 前言/ 这次给大家主要是介绍Python中的正则表达式,及其相关函数的基本使用方法,并且捎带一些正则表达式给我们带来的便利. /2 简介/ Py ...

  9. java 文本查找_Java基于正则表达式实现查找匹配的文本功能【经典实例】

    本文实例讲述了Java基于正则表达式实现查找匹配的文本功能.分享给大家供大家参考,具体如下: REMatch.java: package reMatch; import java.util.regex ...

最新文章

  1. java 不用if_Java 不用for不用if写出九九乘法表算法
  2. python下载网页里面所有的图片-Python 爬虫零基础教程(2):下载一组网页上的图片...
  3. spring文件下载记录
  4. ASP.NET MVC 重点教程一周年版 第二回 UrlRouting 【转】
  5. 【Windows 逆向】内存地址分析 ( 动态地址 | 静态地址 | 偏移量 )
  6. SQLServer2008 Transact_SQL语言基础实例
  7. 【机器学习基础】5种数据同分布的检测方法!
  8. 基于R语言的梯度推进算法介绍
  9. Fedora 23 U盘启动出现“Failed to load ldlinux.c32”解决
  10. C#如何获得系统时间
  11. 【jQuery Demo】图片由下至上逐渐显示
  12. Apache Hadoop下一代MapReduce框架(YARN)简介 (Apache Hadoop NextGen MapReduce (YARN))
  13. 2021 测试工作年终总结
  14. Linux下mySQL数据库斥地手艺-1
  15. 铂电阻测温电路c语言程序,pt100检测电路,Pt100铂电阻测温电路经验
  16. 网络带宽测试工具iperf3(arm<->PC)
  17. thrift 问题梳理
  18. 判断入射满射c语言编码,例4,判断下列函数是否是满射、单射、双射。.PDF
  19. 5天拿到华为Java岗offer
  20. python爬虫二级子页面爬取

热门文章

  1. opencv 无法找到tbb_debug.dll
  2. linux tar的使用方法
  3. 无法解析 list 中的方法 iterator_Python-list中的append()和extend()方法区别
  4. 软件测试:黑盒白盒与动态静态之间有必然联系吗
  5. Java培训出来后一般多少工资
  6. 学习Web前端需要避免哪些错误
  7. 学Java需要学哪些书?
  8. leetcode--最小路径和--python
  9. Intellij Idea 生成serialVersionUID的方法
  10. 数据结构(队列实现篇)