Python | Extraer caracteres excepto la string K

A veces, mientras trabajamos con strings de Python, podemos tener un problema en el que necesitamos extraer todos los elementos de la string, excepto aquellos que se presentan en una substring. Este es un problema bastante común y tiene aplicación en muchos dominios, incluidos los de la programación diaria y competitiva. Analicemos ciertas formas en que se puede realizar esta tarea. 

Método n.º 1: Usar bucle Este es un enfoque de fuerza bruta para este problema. En esto, empleamos el operador not para probar la presencia del elemento en la string maestra y extraerlo si el elemento no está presente en la string K. 

Python3

# Python3 code to demonstrate working of
# Extract characters except of K string
# Using loop
 
# initializing strings
test_str1 = "geeksforgeeks is best"
test_str2 = "fes"
 
# printing original strings
print("The original string 1 is : " + test_str1)
print("The original string 2 is : " + test_str2)
 
# Extract characters except of K string
# Using loop
res = []
for ele in test_str1:
    if ele not in test_str2:
        res.append(ele)
res = ''.join(res)
 
# printing result
print("String after removal of substring elements : " + str(res))
Producción : 

The original string 1 is : geeksforgeeks is best
The original string 2 is : fes
String after removal of substring elements : gkorgk i bt

  Método n.º 2: Uso de operaciones de conjuntos Esta tarea también se puede realizar incluyendo operaciones de conjuntos. Se puede realizar una diferencia establecida para obtener la diferencia de elementos. Los inconvenientes son que no se conserva el orden y se eliminan los duplicados. 

Python3

# Python3 code to demonstrate working of
# Extract characters except of K string
# Using set operations
 
# initializing strings
test_str1 = "geeksforgeeks is best"
test_str2 = "fes"
 
# printing original strings
print("The original string 1 is : " + test_str1)
print("The original string 2 is : " + test_str2)
 
# Extract characters except of K string
# Using set operations
res = ''.join(list(set(test_str1) - set(test_str2)))
 
# printing result
print("String after removal of substring elements : " + str(res))
Producción : 

The original string 1 is : geeksforgeeks is best
The original string 2 is : fes
String after removal of substring elements : oti krbg

Método #3: Usando re.sub() : Esta tarea también se puede realizar usando la función re.sub. La función re.sub() se usa para sustituir el patrón coincidente con la otra string. Podemos usar una string vacía para sustituir qué funciona a medida que borramos todos los caracteres coincidentes en la string. 

Python3

# # Python3 code to demonstrate working of
# Extract characters except of K string
# Using re.sub
import re
# initializing strings
test_str1 = "geeksforgeeks is best"
test_str2 = "fes"
 
# printing original strings
print("The original string 1 is : " + test_str1)
print("The original string 2 is : " + test_str2)
 
# Extract characters except of K string
# Using re.sub
res = re.sub(f'[{test_str2}]', "", test_str1)
 
# printing result
print("String after removal of substring elements : " + str(res))

Producción:

The original string 1 is : geeksforgeeks is best
The original string 2 is : fes
String after removal of substring elements : gkorgk i bt

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 *