Dada una string y el número K, extraiga los primeros K dígitos consecutivos que forman el número.
Entrada : test_str = “geeks5geeks43best”, K = 2
Salida : 43
Explicación : 43 son los primeros 2 dígitos consecutivos.Entrada : test_str = “geeks5gee2ks439best”, K = 3
Salida : 439
Explicación : 439 son los primeros 3 dígitos consecutivos.
Método #1: Usar bucle
Esta es la forma bruta en la que se puede realizar esta tarea. En esto, ejecutamos un ciclo a través de la lista y verificamos si están presentes N elementos consecutivos válidos para el dígito actual, si es así, devolvemos esos N elementos.
Python3
# Python3 code to demonstrate working of # First K consecutive digits in String # Using loop # initializing string test_str = "geeks5geeks43isbest" # printing original string print("The original string is : " + str(test_str)) # initializing K K = 2 # using loop to run through characters res = "" for idx in range(len(test_str) - K + 1): is_num = True # check for valid number of consecutives for j in range(K): is_num = is_num & test_str[idx + j].isdigit() # extracting numbers if is_num : res = "" for j in range(K): res += test_str[idx + j] # printing result print("Required character digits : " + str(res))
The original string is : geeks5geeks43isbest Required character digits : 43
Método #2: Usando regex()
Esta es otra forma más en la que se puede realizar esta tarea. En esto, aplicamos una expresión regular válida y, después del procesamiento, el resultado se devuelve como ocurrencias, se devuelve la primera.
Python3
# Python3 code to demonstrate working of # First K consecutive digits in String # Using regex() import re # initializing string test_str = "geeks5geeks43isbest" # printing original string print("The original string is : " + str(test_str)) # initializing K K = 2 # using regex() to solve problem temp = re.search('\d{% s}'% K, test_str) res = (temp.group(0) if temp else '') # printing result print("Required character digits : " + str(res))
The original string is : geeks5geeks43isbest Required character digits : 43
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