将前导零添加到字符串中的数字

时间:2018-01-22 06:00:11

标签: python regex python-2.7

我有一个包含多个数字的字符串,需要在某些(不是全部)数字中添加前导零。只有单个数字且前面有字母的数字需要前导零。

输入:"Z9_M50_P3_2X_MY_STRING"

输出:"Z09_M50_P03_2X_MY_STRING"

1 个答案:

答案 0 :(得分:6)

试试这个:

(?<=[a-zA-Z])(\d)(?!\d)

替换为:

0\1

Regex Demo

示例来源:(run here

import re

regex = r"(?<=[a-zA-Z])(\d)(?!\d)"
test_str = ("Z9_M50_P3_2X_MY_STRING")
subst = "0\\1"
result = re.sub(regex, subst, test_str, 0, re.MULTILINE)

if result:
    print (result)