Как может выглядеть шаблон регулярного выражения для захвата подстроки между 2 разделителями, но исключая некоторые символы (если есть) после первого разделителя и до последнего разделителя (если есть)?
Например, строка ввода выглядит следующим образом:
var input = @"Not relevant {
#AddInfoStart Comment:String:=""This is a comment"";
AdditionalInfo:String:=""This is some additional info"" ;
# } also not relevant";
Захват должен содержать подстроку между "{" и "}", но исключая любые пробелы, символы новой строки и строку "#AddInfoStart" после начального разделителя "{" (только если они есть), а также исключая любые пробелы , новые строки и ";" и символы "#" перед конечным разделителем "}" (также, если они есть).
Захваченная строка должна выглядеть следующим образом
Comment:String:=""This is a comment"";
AdditionalInfo:String:=""This is some additional info""
Возможно, что есть пробелы до или после внутренних разделителей ":" и ": =", а также что значение после ": =" не всегда помечается как строка, например что-то вроде:
{ Val1 : Real := 1.7 }
Для массивов используется следующий синтаксис:
arr1 : ARRAY [1..5] OF INT := [2,5,44,555,11];
arr2 : ARRAY [1..3] OF REAL