正则表达式实现最小匹配功能的方法
程序员文章站
2022-03-10 22:23:51
本文实例讲述了正则表达式实现最小匹配功能的方法。分享给大家供大家参考,具体如下:
正则表达式默认情况下实现的是最大化匹配,这在有些情况下是非常不愿意出现的,比如下面这段代...
本文实例讲述了正则表达式实现最小匹配功能的方法。分享给大家供大家参考,具体如下:
正则表达式默认情况下实现的是最大化匹配,这在有些情况下是非常不愿意出现的,比如下面这段代码:
# 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正则表达式在线测试工具:
正则表达式在线生成工具:
希望本文所述对大家正则表达式学习有所帮助。