有人知道 Javascript 词法分析器或分词器(最好是 Python 吗?)
基本上,给定一个任意的 Javascript 文件,我想获取 token 。
例如
富 = 1
变成这样:
- 变量名:“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。这是查看代码的直接链接(从 narcissus 移植):
http://code.google.com/p/pynarcissus/source/browse/trunk/jsparser.py
关于Javascript 词法分析器/分词器(在 Python 中?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2001796/