算术表达式的正则表达式

Med*_*dAl 4 java regex arithmetic-expressions

我正在尝试编写一个正则表达式来检查给定的字符串是否像 a + b、2 + a + b、3 + 6 * 9 + 6 * 5 + a * b 等...

只有 + 和 * 运算符。

我试过

if (str.matches("(\\d|\\w \\+|\\*){1,} \\d|\\w"))

不幸的是,它只处理像 3 * 7 ... (numeric * numeric) 这样的情况。

等待您的答复,感谢您的阅读。

Avi*_*Raj 5

*+放在一个字符类里面。

str.matches("\\w(?:\\s[+*]\\s\\w)+");
Run Code Online (Sandbox Code Playgroud)

演示