Написание синтаксических анализаторов для настоящих языков обычно затруднительно, потому что они содержат конструкции, с которыми Лекс и Як часто плохо справляются, например, язык не LALR (1). ColdFusion может быть проще, чем некоторые из-за его XML-подобного стиля.
Если вы хотите быстро создать сложный синтаксический анализатор, вы можете использовать наш
Набор инструментов для реинжиниринга программного обеспечения DMS с поддержкой синтаксического анализа GLR.
Если вы хотите избегать написания своих собственных или взлома всех этих регулярных выражений, вы можете рассмотреть нашу систему поиска исходного кода . Он имеет чувствительные к языку парсеры и может очень быстро выполнять поиск по очень большим базам исходного кода. Одним из его «чувствительных к языку» синтаксических анализаторов является AdhocText, который предназначен для работы с «общими» языками программирования, такими как те, которые вы можете найти в произвольной книге программирования; он даже понимает XML-подобные теги, такие как ColdFusion. Вы можете скачать ознакомительную версию по ссылке, чтобы попробовать ее.
РЕДАКТИРОВАНИЕ 3/3/2010: недавно добавленная функция в SCSE - это возможность помечать определения и использовать отдельно. Это отвечало бы желанию ОП найти определение функции, а не все вызовы.