文字列内の最後の数字 (1 桁ではない) を見つけて、number+1
たとえば/path/testcase9.in
to に置き換える必要があり/path/testcase10.in
ます。Pythonでこれをよりうまくまたは効率的に行う方法は?
これが私が今使っているものです:
reNumber = re.compile('(\d+)')
def getNext(path):
try:
number = reNumber.findall(path)[-1]
except:
return None
pos = path.rfind(number)
return path[:pos] + path[pos:].replace(number, str(int(number)+1))
path = '/path/testcase9.in'
print(path + " => " + repr(self.getNext(path)))