我如何在python中使用re.sub将“ 11 12 13 14”转换为“ 12 13 14 15”

pla*_*ver 1 python regex python-2.7

使用以下方法很容易将其转换11 12 13 1411a 12a 13a 14a

myStr = "11 12 13 14"
myStr = re.sub(r'(\d*)', r'\1a', myStr)
print myStr # 11a 12a 13a 14a
Run Code Online (Sandbox Code Playgroud)

但我怎么能打开11 12 13 1412 13 14 15 使用re.sub

Jan*_*Jan 5

正则表达式解决方案,其中包括re.sub()

import re
string = "11 12 13 14"

def repl(m):
    number = int(m.group(1)) + 1
    return str(number)

print re.sub(r'\b(\d+)\b', repl, string)
# 12 13 14 15
Run Code Online (Sandbox Code Playgroud)

在ideone.com上查看演示

正如其他人提到的那样,这可能不是最合适的解决方案。