很容易将 11 12 13 14
转换为 11a 12a 13a 14a
,使用:
myStr = "11 12 13 14"
myStr = re.sub(r'(\d*)', r'\1a', myStr)
print myStr # 11a 12a 13a 14a
但是如何使用 re.sub
将 11 12 13 14
转换为 12 13 14 15
?
最佳答案
使用 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
参见 a demo on ideone.com .
正如其他人提到的,这可能不是最合适的解决方案。
关于python - 我如何通过在 python 中使用 re.sub 将 "11 12 13 14"转换为 "12 13 14 15",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38008218/