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

发布时间 - 2026-01-10 23:02:33    点击率:

本文实例讲述了正则表达式实现最小匹配功能的方法。分享给大家供大家参考,具体如下:

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

# 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;
}

PS:这里再为大家提供2款非常方便的正则表达式工具供大家参考使用:

JavaScript正则表达式在线测试工具:
http://tools./regex/javascript

正则表达式在线生成工具:
http://tools./regex/create_reg

希望本文所述对大家正则表达式学习有所帮助。


# 正则表达式  # 最小匹配  # 正则表达式匹配任意字符(包括换行符)的写法  # 正则表达式匹配不包含某些字符串的技巧  # 匹配yyyy-mm-dd日期格式的的正则表达式  # 匹配中文汉字的正则表达式介绍  # 正则表达式 匹配至少有一个非空白字符并且不超过指定长度  # js 正则表达式学习笔记之匹配字符串  # 正则表达式匹配 非XXX的行  # PHP匹配多行的正则表达式分析  # js正则表达式匹配数字字母下划线等  # php用正则表达式匹配URL的简单方法  # php正则表达式匹配img中任意属性的方法  # 匹配任意字符的正则表达式写法  # 的是  # 情况下  # 这段  # 不愿意  # 给大家  # 这在  # 所述  # 再为  # 测试工具  # 讲述了  # asWin32Console  # IndiaInventoryArgs  # DatabaseName  # ModuleArgs  # mailRecipients  # binaryExitCode  # LogFolder  # DatabaseUserName  # txt 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 如何在 Pandas 中基于一列条件计算另一列的分组均值  太平洋网站制作公司,网络用语太平洋是什么意思?  网站制作大概要多少钱一个,做一个平台网站大概多少钱?  佐糖AI抠图怎样调整抠图精度_佐糖AI精度调整与放大细化操作【攻略】  原生JS实现图片轮播切换效果  html5怎么画眼睛_HT5用Canvas或SVG画眼球瞳孔加JS控制动态【绘制】  Gemini手机端怎么发图片_Gemini手机端发图方法【步骤】  微信小程序 wx.uploadFile无法上传解决办法  如何在阿里云香港服务器快速搭建网站?  Laravel路由怎么定义_Laravel核心路由系统完全入门指南  详解MySQL数据库的安装与密码配置  香港服务器部署网站为何提示未备案?  Python高阶函数应用_函数作为参数说明【指导】  济南网站建设制作公司,室内设计网站一般都有哪些功能?  Linux后台任务运行方法_nohup与&使用技巧【技巧】  Android仿QQ列表左滑删除操作  Laravel如何保护应用免受CSRF攻击?(原理和示例)  怎样使用JSON进行数据交换_它有什么限制  Win11怎么关闭专注助手 Win11关闭免打扰模式设置【操作】  HTML5建模怎么导出为FBX格式_FBX格式兼容性及导出步骤【指南】  EditPlus中的正则表达式 实战(2)  如何用ChatGPT准备面试 模拟面试问答与职场话术练习教程  制作电商网页,电商供应链怎么做?  如何用免费手机建站系统零基础打造专业网站?  如何基于云服务器快速搭建个人网站?  免费视频制作网站,更新又快又好的免费电影网站?  Laravel Docker环境搭建教程_Laravel Sail使用指南  php在windows下怎么调试_phpwindows环境调试操作说明【操作】  如何在宝塔面板创建新站点?  Laravel怎么实现前端Toast弹窗提示_Laravel Session闪存数据Flash传递给前端【方法】  Laravel如何为API生成Swagger或OpenAPI文档  详解vue.js组件化开发实践  Claude怎样写结构化提示词_Claude结构化提示词写法【教程】  如何实现javascript表单验证_正则表达式有哪些实用技巧  如何在香港服务器上快速搭建免备案网站?  详解ASP.NET 生成二维码实例(采用ThoughtWorks.QRCode和QrCode.Net两种方式)  Laravel 419 page expired怎么解决_Laravel CSRF令牌过期处理  java中使用zxing批量生成二维码立牌  Laravel怎么使用Collection集合方法_Laravel数组操作高级函数pluck与map【手册】  如何在 Telegram Web View(iOS)中防止键盘遮挡底部输入框  Laravel如何与Docker(Sail)协同开发?(环境搭建教程)  Laravel软删除怎么实现_Laravel Eloquent SoftDeletes功能使用教程  如何在阿里云通过域名搭建网站?  Laravel Vite是做什么的_Laravel前端资源打包工具Vite配置与使用  Laravel怎么解决跨域问题_Laravel配置CORS跨域访问  lovemo网页版地址 lovemo官网手机登录  js实现点击每个li节点,都弹出其文本值及修改  Laravel如何使用.env文件管理环境变量?(最佳实践)  js代码实现下拉菜单【推荐】  INTERNET浏览器怎样恢复关闭标签页_INTERNET浏览器标签恢复快捷键与方法【指南】