You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

用于SUVAT计算器的匹配小数/单字母/问号的正则表达式如何编写

适配SUVAT计算器输入规则的正则表达式

最终正则

如果允许输入任意单个英文字母,使用以下规则:

^(\d+(?:\.\d+)?|[a-zA-Z]|\?)$

如果仅允许输入SUVAT对应的5个字母(不区分大小写),可以收缩匹配范围:

^(\d+(?:\.\d+)?|[sSuUvVaAtT]|\?)$

如果需要支持负数输入(比如负加速度、负速度),给数字部分加可选负号即可:

^(-?\d+(?:\.\d+)?|[a-zA-Z]|\?)$

规则说明

  • 首尾的^和$是锚定符,确保匹配整个输入内容,不会出现前后多余字符的情况
  • 三个分支用|分隔,互斥匹配,不会出现混合类输入通过校验的问题:
    1. \d+(?:\.\d+)?:匹配纯数字/小数,支持整数(如2)和带小数点的小数(如2.3),?:用来标记非捕获组,不额外占用分组资源
    2. [a-zA-Z]:匹配单个大小写英文字母,可根据需求替换为指定字母范围
    3. \?:匹配单个问号,转义符\避免问号被识别为正则量词

校验效果

可通过校验的有效值

  • 数字类:0、5、2.3、123.456
  • 字母类:S、s、A、v
  • 未知值类:?

无法通过校验的无效值

  • 混合输入:2.5s、s12、?3
  • 多重复符号:??、ss、1.2.3
  • 空输入、其他特殊字符:""、@、s?

内容的提问来源于stack exchange,提问作者Olivr

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 12:57:00