我正在尝试准备控制台参数的重复模式 通过 CommandLineParser (nuget) 运行。我已经完成了一半,但我无法将 secondmatch 作为个人匹配。
基本上我想做的是一个可链接的调用列表。
每次调用都应该以-t开头
我当前的正则表达式
(((?=-t ).+(?=-t ))|((?=-t ).+))
输入字符串:
-t fistarg -tfalsepositive -a wasdf- -t secondmatch -t thirdmatch
当前比赛:
-t fistarg -tfalsepositive -a wasdf- -t secondmatch
-t 第三场比赛
预期匹配:
-t fistarg -tfalsepositive -a wasdf-
-t secondmatch
-t 第三场比赛
请您参考如下方法:
你可以使用
-t .+?(?=-t |$)
参见 regex demo
详情
-t--t子串.+?- 空格后跟任何 1+ 个字符(使用*?匹配 0+ 个字符),换行字符除外,尽可能少(?=-t |$)- 确保在当前位置右侧立即有一个-t子字符串或字符串结尾的正向前瞻.
