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

Google Form正则表达式验证失效问题求助

Google Forms TextValidationBuilder 正则验证修复方案

问题根源

Google Forms的TextValidationBuilder默认采用部分匹配规则,而非regex101默认的完全匹配。你的原正则([01]{0,1}\d:[0-6]\d((PM)|(AM)))|(\d+)没有锚定整个字符串,导致\d+分支会匹配输入中的任意连续数字片段(比如“12:30”里的“12”、“1234:5678”里的“1234”),从而误判为有效输入。

修正后的正则表达式

添加字符串锚点^(开头)和$(结尾),确保整个输入完全匹配其中一个分支,同时优化正则结构:

^(?:[01]?\d:[0-5]\d(?:AM|PM)|\d+)$

正则说明

  • ^ 和 $:强制匹配整个输入字符串,避免部分匹配导致的误判
  • [01]?\d:匹配0-19的小时数(可选0/1开头,后跟一位数字)
  • [0-5]\d:匹配00-59的分钟数(修正原正则[0-6]\d的错误,分钟最大为59)
  • (?:AM|PM):非捕获组,匹配上午/下午标识
  • |\d+:匹配任意长度的纯数字

验证效果

  • 有效输入:12:30PM、8:00AM、7、123
  • 无效输入:12:30(无AM/PM)、1234:5678(无效时间格式)、12:61AM(分钟超出范围)、abc7def(包含非数字/时间字符)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.27 03:07:14