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

如何使用正则表达式去除重复的点(仅保留单个点)

问题解决:移除文本中连续重复的点,保留单个点

需求回顾

  • 待处理文本示例:
    • (1) "a... b."
    • (2) "a....... b... c."
  • 期望输出结果:
    • (1) "a b."
    • (2) "a b c."

问题分析

你之前的正则思路走偏了,没必要用字符排除类,核心应该是直接定位连续2个及以上的点,然后将其删除即可。

正确实现代码

import re

a = "a... b."
b = "a....... b... c."

# 匹配连续2个或更多的点,替换为空字符串
result_a = re.sub(r'\.{2,}', '', a)
result_b = re.sub(r'\.{2,}', '', b)

print(result_a)  # 输出: "a b."
print(result_b)  # 输出: "a b c."

代码说明

  • r'\.{2,}':正则中.是通配符,所以用\.转义来匹配实际的点;{2,}表示匹配前面的字符至少2次,也就是连续出现的多个点。
  • 用空字符串替换这些连续点,就能精准删掉所有重复的点,只保留孤立的单个点。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.19 04:50:40