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

匹配字母间英文句号的正则编写问题(排除三个连续点的省略号场景)

正则表达式捕获字母间英文句号实现方案

需求背景

需要编写正则捕获文本中位于两个字母之间的英文句号,同时满足多类排除规则:

  • 放行句子中间的三个连续英文句号(省略号),例如not...match中的三个点不被匹配
  • 排除句号后紧跟空格、数字、&、普通双引号、中文左引号的场景,例如."、.“、7.30均不触发匹配
  • 仅匹配类似is.match中的单个英文句号这类符合要求的内容

最终可用正则

(?<=\p{L})(?:\.{1,2}|\.{4,})(?=[^ 0-9.&"“]\p{L})

规则拆解

  • 前导断言(?<=\p{L}):限定匹配位置的前一个字符必须是Unicode字母,确保匹配的句号前接字母
  • 匹配主体(?:\.{1,2}|\.{4,}):仅匹配1-2个连续句号,或者4个及以上连续句号,天然排除了3个连续句号的省略号场景
  • 后置断言(?=[^ 0-9.&"“]\p{L}):限定匹配位置的后续字符不属于空格、数字、&、句号、双引号、中文左引号的范围,且后接字母,符合预设的其他例外排除规则

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.07 09:48:03