Jan*_*eNY 3 java string expression split
如何在Java中拆分布尔表达式?例如,我想从表达式中获取以下内容a_1 & b_2 | (!c_3):
String tokens[] = {"a_1", "&", "b_2", "|", "(", "!", "c_3", ")"};
Run Code Online (Sandbox Code Playgroud)
变量的名称包含字母数字字符和下划线(_).
如果要解析String - 可能要创建语法树并计算表达式 - 那么最好用简单的switch表达式解析String:
// for each char c in String
switch (c) {
case '&': processAnd();break;
case '|': processOr();break;
case '!': processNot();break;
case '(': processOpenPara();break;
case ')': processClosePara();break;
case ' ': break;
default: processVarName(); break;
}
Run Code Online (Sandbox Code Playgroud)
这只是一个显示模式的存根.您可能希望使用堆栈来评估表达式.
| 归档时间: |
|
| 查看次数: |
2016 次 |
| 最近记录: |