公式解析器(用javacc实现)

上传者: dave_xiang | 上传时间: 2021-06-05 09:03:25 | 文件大小: 73KB | 文件类型: RAR
javaCC是一个很好的解析工具,但针对具体应用自己要写一个脚本来应用,然后应用javaCC工具生成java代码即可使用。 在网上的javaCC的应用比较少,也没有太多资料,希望能帮到大家。 这是一个针对公式解析的脚本,打开后可用java直接运行,绝对可用。主要特点如下: * 能够识别负数、小数,但注意出现a--13,这种情况时,就写为a-(-13) * 能够识别字符串 * 能够识别子公式号 * 能够识别多参数函数所需的参数,如max(a,b,c...) * 变量标识除字母、数字、"_"外,还增加"."用于表示子项 * ID(变量名)可以为中文 * 字符串可以中文 * 逻辑标识符加入了NOT的判断,其优先级高于and,or CalcNode.java CalcTree.java SimpleNode.java 三个文件是将解析程序产生的词法树转换为一颗计算树. 这三个类与CalcParser结合使用 注:不要嫌资源分多,这是我辛苦工作的结果,希望得到大家的尊重,谢谢!有什么问题可发站内消息。

文件下载

资源详情

[{"title":"( 33 个子文件 73KB ) 公式解析器(用javacc实现)","children":[{"title":"003","children":[{"title":"Node.class <span style='color:#111;'> 304B </span>","children":null,"spread":false},{"title":"TokenMgrError.class <span style='color:#111;'> 2.58KB </span>","children":null,"spread":false},{"title":"CalcTree.class <span style='color:#111;'> 1.13KB </span>","children":null,"spread":false},{"title":"Token.class <span style='color:#111;'> 621B </span>","children":null,"spread":false},{"title":".project <span style='color:#111;'> 385B </span>","children":null,"spread":false},{"title":"SimpleCharStream.class <span style='color:#111;'> 7.59KB </span>","children":null,"spread":false},{"title":"CalcTree.java <span style='color:#111;'> 862B </span>","children":null,"spread":false},{"title":"JavaCharStream.class <span style='color:#111;'> 8.91KB </span>","children":null,"spread":false},{"title":"SimpleNode.class <span style='color:#111;'> 6.11KB </span>","children":null,"spread":false},{"title":"SimpleNode.java <span style='color:#111;'> 8.00KB </span>","children":null,"spread":false},{"title":"CalcParserTokenManager.java <span style='color:#111;'> 32.65KB </span>","children":null,"spread":false},{"title":"CalcParser.java <span style='color:#111;'> 56.25KB </span>","children":null,"spread":false},{"title":"SimpleCharStream.java <span style='color:#111;'> 11.80KB </span>","children":null,"spread":false},{"title":"CalcNode.class <span style='color:#111;'> 2.93KB </span>","children":null,"spread":false},{"title":"CalcParserTreeConstants.class <span style='color:#111;'> 3.17KB </span>","children":null,"spread":false},{"title":"JJTCalcParserState.java <span style='color:#111;'> 3.07KB </span>","children":null,"spread":false},{"title":"CalcParser.class <span style='color:#111;'> 22.97KB </span>","children":null,"spread":false},{"title":"JavaCharStream.java <span style='color:#111;'> 15.04KB </span>","children":null,"spread":false},{"title":"CalcParserConstants.java <span style='color:#111;'> 2.15KB </span>","children":null,"spread":false},{"title":"CalcNode.java <span style='color:#111;'> 2.40KB </span>","children":null,"spread":false},{"title":"CalcParser.jjt <span style='color:#111;'> 11.04KB </span>","children":null,"spread":false},{"title":"JJTCalcParserState.class <span style='color:#111;'> 2.30KB </span>","children":null,"spread":false},{"title":"CalcParserTokenManager.class <span style='color:#111;'> 13.90KB </span>","children":null,"spread":false},{"title":"CalcParser.jj <span style='color:#111;'> 46.84KB </span>","children":null,"spread":false},{"title":"CalcParser.jjt.bak <span style='color:#111;'> 11.03KB </span>","children":null,"spread":false},{"title":".classpath <span style='color:#111;'> 226B </span>","children":null,"spread":false},{"title":"ParseException.java <span style='color:#111;'> 6.43KB </span>","children":null,"spread":false},{"title":"Node.java <span style='color:#111;'> 1.02KB </span>","children":null,"spread":false},{"title":"TokenMgrError.java <span style='color:#111;'> 4.21KB </span>","children":null,"spread":false},{"title":"CalcParserTreeConstants.java <span style='color:#111;'> 2.71KB </span>","children":null,"spread":false},{"title":"CalcParserConstants.class <span style='color:#111;'> 2.87KB </span>","children":null,"spread":false},{"title":"ParseException.class <span style='color:#111;'> 3.21KB </span>","children":null,"spread":false},{"title":"Token.java <span style='color:#111;'> 2.65KB </span>","children":null,"spread":false}],"spread":false}],"spread":true}]

评论信息

  • QuickRedis :
    终于找到了! 十分有用!
    2014-08-26
  • emainal :
    中文的ID那里比较有用
    2014-03-13
  • tlt0814 :
    还行,可以参考
    2013-12-24
  • delicatemoon :
    参考了一些最后自己用antlr实现的不过, 还是非常感激 算是入门吧 对语法 O(∩_∩)O~
    2013-07-28
  • toyolee315 :
    找到一个JAVACC的东西不容易啊!赞一个!谢啦!!!
    2013-07-08

免责申明

【只为小站】的资源来自网友分享,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,【只为小站】 无法对用户传输的作品、信息、内容的权属或合法性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论 【只为小站】 经营者是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。
本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二条之规定,若资源存在侵权或相关问题请联系本站客服人员,zhiweidada#qq.com,请把#换成@,本站将给予最大的支持与配合,做到及时反馈和处理。关于更多版权及免责申明参见 版权及免责申明