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

字段验证正则表达式问题:无法匹配重复连字符与点

问题解决:允许重复连字符和点的字段验证正则表达式

你的问题出在字符集里的连字符位置——虽然字符集内的-理论上无需转义,但如果放在两个字符之间,容易被正则引擎误判为范围定义符号(比如a-z表示a到z的字符范围)。你当前的正则/^[a-zA-Z-. ]+$/中,Z-.是无效范围(Z的ASCII码大于.),部分引擎会忽略这个无效范围,但会导致连字符的匹配逻辑异常,进而无法识别重复的-或.。

修正后的正则表达式

把-移到字符集的开头或结尾,明确它作为普通字符的身份:

/^[-a-zA-Z. ]+$/

或者:

/^[a-zA-Z. -]+$/

验证结果

  • String → 匹配成功
  • Str- in.g → 匹配成功
  • String-- → 匹配成功
  • String... → 匹配成功

修改后,正则就能正确匹配所有允许的字符,包括重复出现的连字符和点。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.07 19:10:29