lexercreater
v1.0.0
Published
一个用于生成词法分析器的工具包
Maintainers
Readme
lexercreater
一个用于生成词法分析器的工具包。
安装
npm install lexercreater使用
const { createLexer } = require('lexercreater');
const lexer = createLexer({
keywords: ['if', 'set', 'for'],
operators: ['=', '==', '+', '-'],
strings: { start: '"', end: '"' },
numbers: true,
identifiers: /^[a-zA-Z_][a-zA-Z0-9_]*/,
skipWhitespace: true
});
const tokens = lexer('set a = 12;');
console.log(tokens);配置项
| 参数 | 类型 | 说明 |
| :--- | :--- | :--- |
| keywords | Array<string> | 关键字列表 |
| operators | Array<string> | 运算符列表 |
| strings | {start, end} | 字符串界定符 |
| numbers | boolean | 是否识别数字 |
| identifiers | RegExp | 标识符正则 |
| skipWhitespace | boolean | 是否跳过空白 |
| customTokens | Array<{type, regex}> | 自定义规则 |
许可证
CC BY-SA 4.0
作者
miyijun
