使用正则表达式验证数学表达式?

Bib*_*bhu 6 regex

我想用正则表达式验证数学表达式.数学表达式可以是这个

  1. 它可以是空白表示没有输入任何内容

  2. 如果指定,它将始终以运算符+-*或开头,/并且后面将始终跟一个可以包含任意数字位数的数字,该数字可以是十进制(包含.在数字之间)或整数(不是'.'符号在数).示例:*0.9,+22.36,- 90,/ 0.36365

  3. 然后可以接着是第2点(上面一行)中提到的内容.示例:*0.9+5,+22.36*4/56.33,-90+87.25/22,/0.36365/4+2.33

请帮帮我.

kap*_*apa 18

这样的事情应该有效:

^([-+/*]\d+(\.\d+)?)*
Run Code Online (Sandbox Code Playgroud)

Regexr演示

  • ^ - 字符串的开头
  • [-+/*] - 其中一个运营商
  • \d+ - 一个或多个号码
  • (\.\d+)? - 一个可选的点后跟一个或多个数字
  • ()* - 整个表达重复零次或多次

  • +1实际上*回答*问题. (2认同)