logo

Cómo eliminar letras de una cadena en Python

Las cadenas son tipos de datos que se utilizan para representar texto/caracteres. En este artículo, presentamos diferentes métodos para el problema de eliminar el ithcarácter de una cadena y hablar sobre posibles soluciones que se pueden emplear para lograrlos usando Python.

  Input:   'Geeks123For123Geeks'   Output:   GeeksForGeeks   Explanation:   In This, we have removed the '123' character from a string.>

Eliminar caracteres de una cadena en Python

Estos son los siguientes métodos mediante los cuales podemos eliminar letras de una cadena en Pitón :



Eliminar caracteres de una cadena usando reemplazar()

str.reemplazar() se puede utilizar para reemplazar todas las apariciones del carácter deseado. También se puede utilizar para realizar la tarea de eliminar caracteres de una cadena, ya que podemos reemplazar el índice particular con un carácter vacío y, por lo tanto, resolver el problema.

Python3








# Initializing String> test_str>=> 'GeeksForGeeks'> # Removing char at pos 3> # using replace> new_str>=> test_str.replace(>'e'>, '')> # Printing string after removal> # removes all occurrences of 'e'> print>(>'The string after removal of i'th character( doesn't work) : '> +> new_str)> # Removing 1st occurrence of s, i.e 5th pos.> # if we wish to remove it.> new_str>=> test_str.replace(>'s'>, '',>1>)> # Printing string after removal> # removes first occurrences of s> print>(>'The string after removal of i'th character(works) : '> +> new_str)>

>

¿Qué es la expresión regular de Java?
>

Producción

The string after removal of i'th character( doesn't work) : GksForGks The string after removal of i'th character(works) : GeekForGeeks>

Complejidad del tiempo: En)
Complejidad espacial: En)

Retirarse: El principal inconveniente de usar replace() es que falla en los casos en que hay duplicados en una cadena que coincide con el carácter en pos. i. reemplazar() reemplaza todas las apariciones de un carácter en particular y, por lo tanto, reemplazaría todas las apariciones de todos los caracteres en la posición i. A veces todavía podemos usar esta función si el carácter de reemplazo ocurre durante 1calletiempo en la cuerda.

Elimine el carácter específico de la cadena usando Translate()

Este método proporciona un mecanismo sólido para eliminar caracteres de una cadena. En este método, eliminamos 123 de techcodeview.com usando cadena.traducir() .

Python3




str> => 'Geeks123For123Geeks'> > print>(>str>.translate({>ord>(i):>None> for> i>in> '123'>}))>

>

>

Producción

GeeksForGeeks>

Complejidad del tiempo: En)
Complejidad espacial: O(m)

Eliminar el carácter específico de la cadena mediante recursividad

Para eliminar el carácter i de una cadena mediante recursividad, puede definir una función recursiva que tome la cadena y el índice que se eliminarán como argumentos. La función verificará si el índice es igual a 0, en este caso devuelve la cadena con el primer carácter eliminado. Si el índice no es 0, la función puede devolver el primer carácter de la cadena concatenado con el resultado de llamar nuevamente a la función en la cadena con el índice disminuido en 1.

Python3




def> remove_ith_character(s, i):> ># Base case: if index is 0,> ># return string with first character removed> >if> i>=>=> 0>:> >return> s[>1>:]> ># Recursive case: return first character> ># concatenated with result of calling function> ># on string with index decremented by 1> >return> s[>0>]>+> remove_ith_character(s[>1>:], i>-> 1>)> # Test the function> test_str>=> 'GeeksForGeeks'> new_str>=> remove_ith_character(test_str,>2>)> print>(>'The string after removal of ith character:'>, new_str)> # This code is contributed by Edula Vinay Kumar Reddy>

>

>

Producción

The string after removal of ith character: GeksForGeeks>

Complejidad del tiempo: En)
Complejidad espacial: En)

Eliminar letras de una cadena utilizando el método nativo

En este método, sólo hay que ejecutar un bucle de pitón y agregue los caracteres tal como vienen y cree una nueva cadena a partir de la existente, excepto cuando el índice sea i.

Python3




test_str>=> 'GeeksForGeeks'> # Removing char at pos 3> new_str>=> ''> for> i>in> range>(>len>(test_str)):> >if> i !>=> 2>:> >new_str>=> new_str>+> test_str[i]> # Printing string after removal> print> (>'The string after removal of i'th character : '> +> new_str)>

>

>

Producción

The string after removal of i'th character : GeksForGeeks>

Complejidad del tiempo: En)
Complejidad espacial: O(n), donde n es la longitud de la cuerda.

quitar la yothCarácter de la cadena usando Slice

uno puede usar trozo de cuerda y corte la cadena antes de la pos i, y corte después de la pos i. Luego usando concatenación de cadenas de ambos, yothEl carácter puede parecer eliminado de la cadena.

Python3




# Initializing String> test_str>=> 'GeeksForGeeks'> # Removing char at pos 3> # using slice + concatenation> new_str>=> test_str[:>2>]>+> test_str[>3>:]> # Printing string after removal> # removes ele. at 3rd index> print> (>'The string after removal of i'th character : '> +> new_str)>

iterar a través del mapa java

>

>

Producción

The string after removal of i'th character : GeksForGeeks>

Complejidad del tiempo: En)
Complejidad espacial: En)

quitar la yothCarácter de la cadena usando str.unirse()

En este método, cada elemento de una cadena se convierte primero en cada elemento de la lista y luego cada uno de ellos se une para formar una cadena, excepto el índice especificado.

Python3




# Initializing String> test_str>=> 'GeeksForGeeks'> # Removing char at pos 3> # using join() + list comprehension> new_str>=> ''.join([test_str[i]>for> i>in> range>(>len>(test_str))>if> i !>=> 2>])> # Printing string after removal> # removes ele. at 3rd index> print> (>'The string after removal of i'th character : '> +> new_str)>

>

>

Producción

The string after removal of i'th character : GeksForGeeks>

Complejidad del tiempo: En)
Complejidad espacial: En)

Eliminar letras de una cadena en Python usando bytearray

Defina la función remove_char(s, i) que toma una cadena sy un número entero i como entrada. Y luego convierta la cadena de entrada s a un bytearray usando bytearray(s, 'utf-8'). Eliminar el iésimo elemento del matriz de bytes usando del b[i]. Convierta el bytearray modificado nuevamente en una cadena usando b.decode() y devuelva la cadena modificada.

Python3




def> remove_char(s, i):> >b>=> bytearray(s,>'utf-8'>)> >del> b[i]> >return> b.decode()> # Example usage> s>=> 'hello world'> i>=> 4> s>=> remove_char(s, i)> print>(s)>

>

>

Producción

hell world>

Complejidad del tiempo: En)
Complejidad espacial: En)

nfa a dfa

Eliminar letras de una cadena usando removeprefix()

eliminarprefijo() elimina el prefijo y devuelve el resto de la cadena. Podemos eliminar letras de una cadena para cualquier índice específico dividiendo la cadena en dos mitades de modo que la letra que queríamos eliminar venga en el prefijo de cualquiera de las dos particiones y luego podemos aplicar el método para eliminar la letra.

Python3




#initializing the string> s>=>'techcodeview.com'> #if you wanted to remove 'G' of 0th index> s1>=>s.removeprefix(>'G'>)> #if you wanted to remove 'f'> s2>=>s[:>5>]>+>s[>5>:].removeprefix(>'f'>)> print>(s1)> print>(s2)>

>

>

Producción:

eeksforGeeks GeeksorGeeks>

Complejidad del tiempo: En)
Complejidad espacial: En)