将分割符号添加到正则表达式
^(\+|-)?(\d+)?([.]?\d*)?$
查看添加斜杠符号,如表达式接受4/5
。
答案 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)
)?
)
$