Кто-нибудь знает о лексическом анализаторе или токенизаторе Javascript (предпочтительно на Python?)
По сути, учитывая произвольный файл Javascript, я хочу получить токены.
, например
foo = 1
становится чем-то вроде:
http://code.google.com/p/pynarcissus/ имеет один.
Также я сделал один, но он не поддерживает автоматическую вставку точек с запятой, поэтому для javascript довольно бесполезно, что вы не можете контролировать (как почти всю реальную жизнь)javascript-программам не хватает хотя бы одной точки с запятой) :) Вот мое:
http://bitbucket.org/santagada/jaspyon/src/tip/jaspyon/
грамматика находится в jsgrammar.txt, она анализируется библиотекой парсинга PyPy (которая у вас будетзагрузить и извлечь из источника pypy) и создать дерево разбора, которое я хожу по astbuilder.py
Но если у вас нет проблем с лицензированием, я бы пошел с pynarcissus.Вот прямая ссылка, чтобы посмотреть на код (перенесен из нарцисса):
http://code.google.com/p/pynarcissus/source/browse/trunk/jsparser.py