将除法添加到正则表达式

时间:2017-05-03 21:56:32

标签: regex

将分割符号添加到正则表达式

^(\+|-)?(\d+)?([.]?\d*)?$

查看添加斜杠符号,如表达式接受4/5

2 个答案:

答案 0 :(得分:1)

添加包含/的可选表达式和与数字匹配的正则表达式。

^(\+|-)?(\d*)([.]?\d*)?(?:/(\+|-)?(\d*)([.]?\d*)?)?$

BTW,(\d+)?可以简化为(\d*)

答案 1 :(得分:0)

你应该使用一个更符合语言解析器的正则表达式 解析整数或非指数小数。

那就像巴马尔说的那样,你可以添加一个可选的斜杠加数字。

^(?:([+-]?)(\d+(?:\.\d*)?|\.\d+)(?:\s*/\s*([+-]?)(\d+(?:\.\d*)?|\.\d+))?)$

格式化

 ^ 
 (?:
      ( [+-]? )                     # (1), plus/minus sign
      (                             # (2 start), number
           \d+ 
           (?: \. \d* )?
        |  \. \d+ 
      )                             # (2 end)
      (?:                           # Optional division
           \s* 
           /                             # division sign
           \s* 
           ( [+-]? )                     # (3), plus/minus sign
           (                             # (4 start), number
                \d+ 
                (?: \. \d* )?
             |  \. \d+ 
           )                             # (4 end)
      )?
 )
 $