Python: eliminar después de la substring en String

Dada una string, elimine todos los caracteres después de una substring particular.

Entrada : test_str = ‘geeksforgeeks es mejor para geeks’, sub_str = «for»
Salida : geeksforgeeks es mejor para
Explicación : todo lo eliminado después de for.

Entrada : test_str = ‘geeksforgeeks es lo mejor para los geeks’, sub_str = «es»
Salida : geeksforgeeks es
Explicación : todo lo eliminado después de es.

Método #1: Usar index() + len() + rebanar

En esto, primero obtenemos el índice de la substring para realizar la eliminación después, le agregamos su longitud usando len() y luego cortamos los elementos después de esa string usando el corte.

Python3

# Python3 code to demonstrate working of 
# Remove after substring in String
# Using index() + len() + slicing
  
# initializing strings
test_str = 'geeksforgeeks is best for geeks'
  
# printing original string
print("The original string is : " + str(test_str))
  
# initializing sub string 
sub_str = "best"
  
# slicing off after length computation
res = test_str[:test_str.index(sub_str) + len(sub_str)]
  
# printing result 
print("The string after removal : " + str(res)) 
Producción

The original string is : geeksforgeeks is best for geeks
The string after removal : geeksforgeeks is best

Método n.º 2: Usar regex() (para eliminar después de una ocurrencia numérica)

Esta es una solución a un problema ligeramente diferente en el que se requiere la eliminación de la string después de la ocurrencia numérica. Empleamos la operación de coincidencia y retiene todo antes de que se encuentre la coincidencia.

Python3

# Python3 code to demonstrate working of 
# Remove after substring in String
# Using regex() ( for stripping off after numeric occurrence)
import re
  
# initializing strings
test_str = 'geeksforgeeks is best 4 geeks'
  
# printing original string
print("The original string is : " + str(test_str))
  
# slicing after the numeric occurrence
res = re.match(r"(.*\d+)", test_str).group()
  
# printing result 
print("The string after removal : " + str(res)) 
Producción

The original string is : geeksforgeeks is best 4 geeks
The string after removal : geeksforgeeks is best 4

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

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *