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

如何编写正则表达式验证合规单个句子(可带/不带结尾句号)

验证单个句子的正则表达式解决方案

正确的正则表达式

^[^.]*$|^.*\.$

原有正则失效的原因

你之前用的.*?\.?$没有锚定整个字符串(缺少开头^和结尾$),导致正则会匹配字符串里的任意符合片段。比如在He jumped over the fence. She jumped over it too.中,前面的He jumped over the fence.会被单独匹配到,错误判定整个字符串符合要求。

正则逻辑说明

这个正则包含两个分支,满足任意一个就能通过验证:

  • ^[^.]*$:匹配完全不含句号的整个字符串,对应你要求的「不包含句号及任何结尾标点」的场景(如果需要排除感叹号、问号这类其他结尾标点,可修改为^[^.!?]*$)
  • ^.*\.$:匹配以句号结尾且句号后无任何内容的整个字符串,对应你要求的第一种情况

测试结果

  • 验证通过:He jumped over the fence.、He jumped over the fence
  • 验证失败:He jumped over the fence. She jumped over it too.

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.02 02:40:29