Я хотел бы создать регулярное выражение, которое избегает строки.Сама строка может появляться сама по себе, что не должно влиять на результат сопоставления.Вот мой сценарий.
Мое текущее регулярное выражение: (.*?)(.*(\.\$(.*?)\=))(.*\')
Тестовые строки:
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. '
- Может также случиться так, что заранее есть несколько запросов, например.
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. '
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'
, фактически не влияя на запрос.