数学公式的正则表达式?

时间:2018-02-08 10:39:03

标签: php regex

因为我是reg ex和php的新手我正在创建数学公式制作者,但我坚持验证该公式。我能够通过PHP代码验证括号匹配,但不能确定运算符。任何人都可以帮我写正则表达式来验证吗?

我有公式,例如A1+500+4 但它正在输入A1++5%/这样的输入

我正在使用词汇分析来验证树皮,这是一个简单的公式,如下所示

([A0-9][-+%~^*]\d+(\.\d+)?)

1 个答案:

答案 0 :(得分:0)

您可以使用

FilterExpression

请参阅regex demo

<强>详情

  • (?<!\S)A[0-9]+(?:[-+%~^*]+A?\d+(?:\.\d+)?)+(?!\S) - 一个负面的lookbehind,在当前位置之前不需要非空格(在当前位置之前必须有一个空格或字符串的开头,一个前导的空白边界)
  • (?<!\S) - A[0-9]+后跟1+位数
  • A - 一次或多次出现
    • (?:[-+%~^*]+A?\d+(?:\.\d+)?)+ - 1 + [-+%~^*]+-+%~^字符
    • * - 1或0 A? s
    • A - 1+位数
    • \d+ - 可选序列
      • (?:\.\d+)? - 一个点
      • \. - 1+位数
  • \d+ - 一个负向前瞻,在当前位置之后不需要非空格(在当前位置之后必须有一个空格或字符串结尾,一个尾随的空白边界)
相关问题