如何解析表达式

问题描述

项目中有这么一个需求,给一个表达式例如x/5+2y-10=z要求解析成x=5z-10y+50现在没什么头绪,希望大家能给些建议,谢谢

解决方案

解决方案二:
mark明天看
解决方案三:
解析是什么意思?就是解?
解决方案四:
有点麻烦,一时也不会弄的好,明天再搞,你可以看下编译原理的资料先
解决方案五:
没看懂什么意思
解决方案六:
引用楼主liqiang208的回复:

项目中有这么一个需求,给一个表达式例如 x/5+2y-10=z要求解析成x=5z-10y+50现在没什么头绪,希望大家能给些建议,谢谢

这个确实没接触过。xyz变量如果能在x/5+2y-10=z表达式中使用,则它们必定给定义过而且初始化了。就没有求x=?的问题了吧??
解决方案七:
没看懂路过呵呵
解决方案八:
首先你的表达式的输入形式是什么?如果这个知道了很简单的。
解决方案九:
mark先
解决方案十:
解析过程:第一,运算符的优先级隐含在生成规则的定义方式中;第二,这种递归解析和计算表达式的方式跟人们计算数学表达式的方式非常相似。
解决方案十一:
这个问题要处理起来需要考虑的问题还真不少,既有字符的解析还有运算符的优先级.因为好多情况下不同的书写其语义是一样的比如:x/5+2y-10=z0.5*2+2*y-10=z0.5*2+y*2-10=z
解决方案十二:
学习,帮顶
解决方案十三:
帮顶,这个真的不知道
解决方案十四:
例如x/5+2y-10=z要是多几个例子就知道怎么解析了

时间: 2024-10-01 18:20:17

如何解析表达式的相关文章

Angularjs手动解析表达式($parse)_javascript技巧

下面一段代码给大家介绍了angularjs手动解析表达式($parse),具体代码如下所示: <!DOCTYPE html> <html lang="zh-CN" ng-app="app"> <head> <meta charset="utf-8"> <title>手动解析表达式($parse)</title> <link rel="stylesheet&qu

深入探究Lua中的解析表达式_Lua

 使用一个模式 这个例子显示了一个建立和使用模式的程序,它非常简单但很完整: 复制代码 代码如下: local lpeg = require "lpeg" -- matches a word followed by end-of-string p = lpeg.R"az"^1 * -1 print(p:match("hello"))        --> 6 print(lpeg.match(p, "hello")) 

C# 动态解析表达式

需求 我们很难捉摸用户的思维,即使使用非常正式的文档规范某些数据的定义.结果的标准等,也不能抵挡住用户不断变化的需求,但他们有个万变不离的东西--你做这个东西要是万能的,即输入参数类型.个数等发生改变,也得生成出正确的结果. 在编程计算中,很多时候涉及一些公式,用户要求不但能够调整系数.还要能够调整理公式的结构.例如,将2+3-5调整理成2+3*5.我之前使用的解决方案是写一个类,换公式了,就继承它,写一个子类,代码中用反射去调用这个子类,可以解决问题.但是有些麻烦. 解决方案 现决定,用动态来

用javascript实现人工智能脚本

javascript|脚本  最近在网上偶然看到一篇文章,说javascript = C+Lisp,于是思考这样的问题,既然javascript包含着部分Lisp的血统,那么用javascript来实现一个类似于Lisp的人工智能脚本又会是什么样子? LISt Processing语系作为一种"函数式"语系,自从诞生之日起便以其简单优美的风格和简洁高效的结构征服了许许多多的研究者和爱好者. 目前这种古老的语言和文法仍然被许许多多的人使用着并热爱着,而且在人工智能等领域发挥着非常巨大的作

javaCC学习笔记

笔记 javaCC的功能和yacc相似,主要根据bnf范式生成解析程序,不过javaCC是集合了词法分析和语法分析生成java解析代码,主页为:https://javacc.dev.java.net/ javaCC有三个工具 javaCC 用来处理语法文件(jj)生成解析代码: jjTree 用来处理jjt文件,生成树节点代码和jj文件,然后再通过javaCC生成解析代码: jjDoc 根据jj文件生成bnf范式文档(html) javaCC使用的各种语言的Grammar 文件这里有很多http

VB与Excel在乘幂运算时的结果差异及其不合理性

excel|运算 东北林业大学环境科学系 隋祥引言表达式解析是编程工具与电子表格等软件最基本的功能之一,不同的软件在解析表达式时都遵循一定的运算规则,在不同软件中,这些运算规则略有差异,导致计算结果也不同.笔者在实践中发现,VB与Excel在处理"连续乘幂"这一常见运算时,所遵循的法则有着较大的出入,而且都存在着不合理的因素.本文试图通过论述得到一种更为合理的运算模式,并为编写表达式解析类过程提供指导. 问题分析下表列出了VB6.0与Excel2003在处理同一个关于乘方运算的表达式时

表达式解析的全部源码 C#版

using System;using System.Collections; namespace XXXXX{ public class Expression {  private Expression() {}   #region No01.表达式分割为ArrayList形式  /// <summary>  /// 要求表达式以空格\t作为分隔符  /// 转换表达式折分为:  /// 变量及数值 ,变量不允许为@  /// 字符串""  /// 运算符号{+.-.*./

Informix Dynamic Server数据库分段存储

Informix Dynamic Server分段存储,也称之为分片存储,其原理是对数据表中的记录或索引有规则地分散存储在磁盘不同的区域,达到将数据存储在多个磁盘上,通过减少对磁盘I/O的竞争,来提高数据库的效率.与此相反的是基本存储原则,其鼓励将数据库表中的数据尽量连续地存放在一个存储设备上,在Informix Dynamic Server读出数据时,将数据批量读出,以提高数据库的效率. 分段存储主要是通过均衡磁盘 I/O,实现内部查询的并行操作.并行地扫描多个磁盘上的数据来提高查询效率,其使

对图像的直方图进行变换操作

前言 图像增强处理技术一直是图像处理领域一类非常重要的基本图像处理技术.通过采取适当的增强处理可以使原本模糊不清甚至根本无法分辨的原始图片处理成清楚.明晰的富含大量有用信息的可使用目标图像,因此此类图像处理技术在医学.遥感.微生物.刑侦以及军事等诸多科研和应用领域对原始图像的模式识别.目标检测等起着重要作用.本文将从空间域的角度对图像的灰度直方图增强处理方法做详细的介绍. 图像的灰度直方图处理技术 在空域对图像进行增强处理的方式有许多种,如增强对比度和动态范围压缩等等,但这些处理方式都是针对原始