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

如何使用Python 3.6正则表达式在三位数字后添加空格?

解决方案

搞定这个需求很简单,用Python 3.6的正则表达式就能轻松实现,直接上完整方案:

代码实现

import re

def format_phone_number(phone_str):
    # 正则匹配 +XX 空格 前三位数字 剩余数字的结构
    pattern = r'(\+\d{2} )(\d{3})(\d+)'
    # 替换为「国家码 + 前三位数字 + 空格 + 剩余数字」的格式
    return re.sub(pattern, r'\1\2 \3', phone_str)

# 测试示例输入
test_input = "+91 1244567"
output = format_phone_number(test_input)
print(output)  # 输出: +91 124 4567

# 测试其他符合格式的号码
another_test = "+44 123456789"
print(format_phone_number(another_test))  # 输出: +44 123 456789

正则规则解释

  • (\+\d{2} ):第一个捕获组,匹配以+开头的两位国家码,以及后面的空格(比如示例里的+91 )
  • (\d{3}):第二个捕获组,精准定位国家码后的前三位数字(比如示例中的124)
  • (\d+):第三个捕获组,匹配剩下的所有数字(比如示例中的4567)
  • 替换字符串r'\1\2 \3':把三个捕获组按顺序拼接,同时在第二个和第三个组之间插入空格,完美实现格式调整

这个方案适配所有+XX XXXXX...格式的号码,不管后面的数字长度多少,都能准确在前三位后插入空格。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.26 10:10:23