Dada una String, t incrementa el número que está al final de la string.
Entrada : test_str = ‘geeks006’
Salida : geeks7
Explicación : Sufijo 006 incrementado a 7.Entrada : test_str = ‘geeks007’
Salida : geeks8
Explicación : Sufijo 007 incrementado a 8.
Método #1: Usando findall() + join() + replace()
En esta estrategia, realizamos la tarea de encontrar el número usando findall(), luego realizamos la tarea de separar la string numérica y la string de prefijo, luego se realiza un incremento de una string numérica. Por último, la string se une para obtener un prefijo seguido de un número incrementado.
Python3
# Python3 code to demonstrate working of # Increment Suffix Number # Using findall() + join() + replace() import re # initializing string test_str = 'geeks006' # printing original string print("The original string is : " + str(test_str)) # getting suffix number reg = re.compile(r'[ 0 - 9]') mtch = reg.findall(test_str) # getting number num = ''.join(mtch[-3 : ]) pre_str = test_str.replace(num, '') # Increment number add_val = int(num) + 1 # joining prefix str and added value res = pre_str + str(add_val) # printing result print("Incremented numeric String : " + str(res))
Producción:
The original string is : geeks006 Incremented numeric String : geeks61
Método #2: Usando sub() + group() + zfill()
En esto, realizamos la tarea de agrupar números usando group() e incrementando, zfill() se usa para la tarea de completar los valores principales requeridos en numérico. El sub() se usa para encontrar la parte numérica de las strings.
Python3
# Python3 code to demonstrate working of # Increment Suffix Number # Using sub() + group() + zfill() import re # initializing string test_str = 'geeks006' # printing original string print("The original string is : " + str(test_str)) # fstring used to form string # zfill fills values post increment res = re.sub(r'[0-9]+$', lambda x: f"{str(int(x.group())+1).zfill(len(x.group()))}", test_str) # printing result print("Incremented numeric String : " + str(res))
Producción:
The original string is : geeks006 Incremented numeric String : geeks007
Publicación traducida automáticamente
Artículo escrito por manjeet_04 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA