首页 > 解决方案 > 使用正则表达式查找和计算所有内容

问题描述

我的项目(Android)中有许多包含简单方程式的文件。无非是 (-,+,*,/)。我正在寻找一种更简单的方法来计算所有内容,而无需我手动逐一进行。有没有办法搜索所有等式,例如(某个数字)*(其他数字),然后用它的答案替换它?

标签: androidregex

解决方案


据我所知,Java 中没有类似的“eval”函数(假设您直接用 Java 编写到 Android Studio 中),但在这种情况下,它可能会使用ScriptEngine,因此您可以将表达式评估为 Javascript 字符串然后使用有用的“评估”功能:

import javax.script.ScriptEngineManager;
import javax.script.ScriptEngine;

ScriptEngineManager manager = new ScriptEngineManager();
ScriptEngine engine = manager.getEngineByName("js");
Object result = engine.eval("4*5");

推荐阅读