正则表达式或更改不起作用

时间:2016-09-30 15:00:22

标签: c# regex

我有以下查询,并在两个正则表达式模式之间使用或condion进行采样

模式:\((?>\((?<c>)|[^()]+|\)(?<-c>))*(?(c)(?!))\)(?=[)[]GS)|(?=[^ ]*\$).*(?=[[]GS)

输入:$sense$[TM] & ( ( monitoring$ | automat$ | building$ | facilit$ )[GS]) & "9"[IC]

使用模式\((?>\((?<c>)|[^()]+|\)(?<-c>))*(?(c)(?!))\)(?=[)[]GS)

中的第一个正则表达式实现所需的输出 另一个案例需要

(?=[^ ]*\$).*(?=[[]GS)

所需的输出:( ( monitoring$ | automat$ | building$ | facilit$ )

但如果我同时使用两种模式“|”它给出的改变低于结果

$sense$[TM]  &  ( ( monitoring$  |  automat$  |  building$  |  facilit$ )

原因:|之后的第二个模式也在执行。

0 个答案:

没有答案