Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программирование и базы данных (http://forum.oszone.net/forumdisplay.php?f=21)
-   -   Помогите составить регулярное выражение по разбору функции (http://forum.oszone.net/showthread.php?t=286699)

morebeauty 19-08-2014 11:10 2391145

Помогите составить регулярное выражение по разбору функции
 
Не могу вкурить как это сделать. Синтаксис уже до дыр протер, а использовать мозгов наверное не хватает.

Есть функция. Например на паскале.

function fName(params):type;
var variables;
begin
***
body
***
end;

собственно можно ли одной строкой выделить основные части (разобрать функцию)?
начинается с ключевого слова function
далее имя функции
далее в скобках параметры
далее через двоеточие тип возвращаемых данных
далее область определения переменных
далее тело функции между begin и end;

pva 20-08-2014 08:37 2391578

morebeauty, если делать по-честному, то регулярного выражения недостаточно (смотри dragon book, лекции по теории компиляторов). Если тебе не нужно строить Abstract Syntax Tree, а нужно сделать несложное действие (например поменять аргументы местами у функции, написанной без ошибок), то хватит и регулярок. У тебя задача разобрать как это делает компилятор или более простая (и какая)?


Время: 03:13.

Время: 03:13.
© OSzone.net 2001-