我试图从字符串中捕获数字,该字符串有时包含点分隔符,有时不包含。无论如何,我需要一个带有点分隔符的数字。
例如:
num = re.findall('\d{3}\.(?:\d{2}\.){4}\d{3}|\d{14}', txt)[0]
将捕获两种变体:
304.33.44.52.03.002
30433445203002
如果它捕获了没有点的点,我需要使用以下系统添加点:
AAA.BB.CC.DD.EE.FFF
如何使用 Python 添加这些点?
最佳答案
没有正则表达式的解决方案。
您可以将其转换为 list并在所需位置插入点,确保值为 string .
n = 30433445203002
l = list(str(n))
在需要的位置添加点
l.insert(3, '.')
l.insert(6, '.')
l.insert(9, '.')
l.insert(12, '.')
l.insert(15, '.')
如果这是明确定义的模式。您可以概括上面的插入。
插入完成后,join他们回到字符串:
num = "".join(l)
输入:
30433445203002
输出:
304.33.44.52.03.002
关于python - 如何在Python中的数字的不同位置添加点分隔符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53976250/