正则表达式有条件地终止模板

时间:2017-03-12 12:17:27

标签: c# regex

模式总是从某个键开始(例如需要开始) 价值可以是多线的。 模式可以使用某些键之一终止(例如,结束1 结束1 )。终止键可以在输入文本中呈现两者或仅呈现其中一种。如果两者都是,则只需要第一个。

此示例的正则表达式模式如下所示:needed beginning([\S\s]*)(?>ending1|ending2)

这是Regex101无效example

第二个捕获组是完全错误的,我不知道如何实现这个案例

输入文字可以是这样的:

some 
other
not 
interesting 
text
needed beginning
value       <-- 
can be      <-- this needed to be captured
multiline   <--
ending1
some other values
and other
ending2
some 
other
not 
interesting 
text

或者像这样:

some 
other
not 
interesting 
text
needed beginning
value       <-- 
can be      <-- this needed to be captured
multiline   <--
ending2
some 
other
not 
interesting 
text

1 个答案:

答案 0 :(得分:2)

这对你有用吗? 更新:https://regex101.com/r/SBNUQG/2

使用正则表达式:需要开头(。*?)(结尾1 |结束2)

使用选项&#34;单行&#34;