正则表达式在数字中添加逗号分隔符

2024-05-06 01:07:44 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试将逗号分隔符添加到数字字符串中

import re

s = '12 123 1234 12345 123456 1234567 12345678'
print(re.sub(r'(\d{3}\b)', r',\1', s))

# gives
# 12 ,123 1,234 12,345 123,456 12345,678

其中:

  • 123不应该有逗号

  • 1234567应该是1234567

  • 12345678应该是12345678


1条回答
网友
1楼 · 发布于 2024-05-06 01:07:44

如果您坚持使用re

s = '12 123 1234 12345 123456 1234567 12345678 00111222333444555666'
s2 = ''
while s != s2:
    s2 = s
    s = re.sub(r'(\d)(\d{3}\b)', r'\1,\2', s2)
print(s)

印刷品

12 123 1,234 12,345 123,456 1,234,567 12,345,678 00,111,222,333,444,555,666

相关问题 更多 >