相关疑难解决方法(0)

是否有可用于8位嵌入式系统的flex/bison的替代方案?

我正在编写一个小型解释器,用于简单的BASIC语言,使用avr-gcc工具链在C语言的AVR微控制器上练习.但是,我想知道是否有任何开源工具可以帮助我编写词法分析器和解析器.

如果我写这个在我的Linux机器上运行,我可以使用flex/bison.现在我把自己限制在一个8位平台上,我必须手动完成所有操作,不是吗?

embedded parsing bison avr-gcc flex-lexer

80
推荐指数
3
解决办法
6万
查看次数

得出一个表达

假设我有这两个例子

  1. (A = 1)和(B = 2)
  2. (A = 1)(B = 2()).

我需要一种方法来获得以下数组:

  1. [(],[A][=][1],[)],[and],[(],[B],[=],[2],[)]
  2. [(],[A][=][1],[)],[(],[B],[=],[2],[(],,[)][)]

我试图做的是以下内容

使用以下函数查找分隔符(在这种情况下,分隔符是空格" " and any brackets ())

 function findExpressionDelimeter (textAreaValue){
    var delimiterPositions = [];
    var bracesDepth = 0;
    var squareBracketsDepth = 0;
    var bracketsDepth = 0;

    for (var i = 0; i < textAreaValue.length; i++) {
        switch (textAreaValue[i]) {
            case '(':
                bracketsDepth++;
                delimiterPositions.push(i);
                break;
            case ')':
                bracketsDepth--;
                delimiterPositions.push(i);
                break;
            case '[':
                squareBracketsDepth++;
                break;
            case ']':
                squareBracketsDepth--;
                break;
            default:
                if (squareBracketsDepth == 0 && …
Run Code Online (Sandbox Code Playgroud)

javascript regex arrays substring

5
推荐指数
1
解决办法
73
查看次数

标签 统计

arrays ×1

avr-gcc ×1

bison ×1

embedded ×1

flex-lexer ×1

javascript ×1

parsing ×1

regex ×1

substring ×1