正则表达式:匹配两个确定符之间可能本身出现的字符串

时间:2019-03-20 13:51:37

标签: c# regex

我想创建一个转义字符串的正则表达式。字符串本身可能会出现,这不会影响匹配结果。这是我的情况。

我当前的正则表达式:(.*?)(.*(\.\$(.*?)\=))(.*\')

测试字符串:

  1. Text.$Property='This: .$Should= be ignored by the regex. Also 'this' shouldn't affect the regex. '
    • 预期:'This: .$Should= be ignored by the regex. Also 'this' shouldn't affect the regex. '
  2. 也可能是事先有多个查询的情况,例如Eg.$Over='Other Text'Text.$Property='This: .$Should= be ignored by the regex. Also 'this' shouldn't affect the regex. '
    • 预期:'This: .$Should= be ignored by the regex. Also 'this' shouldn't affect the regex. '
  3. Eg.$Over='Other Text'Text.$Property='Eg.$Over='Other Text'Text.$Property='''
    • 预期:'Eg.$Over='Other Text'Text.$Property='''

因此目标是在预期的'-'范围内,没有字符会影响正则表达式。即使字符串本身包含相同的查询(请参见示例3)。

任何帮助将不胜感激c:

非常感谢。

编辑1(规则解释为语言):

覆盖系统正在解释查询。 查询示例:

_Children=>Select(@Content.$Placeholder='Some value'._Children=>Select(@SubContent.$Value='Sub value._test of content'))._Count

目标是匹配.$Property='VALUE'中的值。 在重叠查询中,我们仅搜索最后一个匹配项,因此匹配项应为'Sub value._test of content'

问题是VALUE可以是任何字符和任何组合,并且可能会发生VALUE等于$Intercept='Just a value'的情况。 之前应该是VALUE的匹配现在应该是$Intercept='Just a value',而实际上不会影响查询。

0 个答案:

没有答案