Python: agregue espacio entre números y alfabetos en String

Dada una string que consta de números y strings, agregue un espacio entre ellos.

Entrada : test_str = ‘ge3eks4geeks is1for10geeks’ Salida : ge 3 eks 4 geeks es 1 para 10 geeks Explicación : números separados de caracteres. Entrada : test_str = ‘ge3eks4geeks’ Salida : ge 3 eks 4 geeks Explicación : números separados de caracteres por espacio.

Método #1: Usar expresiones regulares + sub() + lambda

En esto, realizamos la tarea de encontrar alfabetos por expresiones regulares apropiadas y luego sub() se usa para hacer reemplazos, lambda hace la tarea de agregar espacios en el medio.

Python3

# Python3 code to demonstrate working of
# Add space between Numbers and Alphabets in String
# using regex + sub() + lambda
import re
 
# initializing string
test_str = 'geeks4geeks is1for10geeks'
 
# printing original String
print("The original string is : " + str(test_str))
 
# using sub() to solve the problem, lambda used tp add spaces
res = re.sub("[A-Za-z]+", lambda ele: " " + ele[0] + " ", test_str)
 
# printing result
print("The space added string : " + str(res))
Producción

The original string is : geeks4geeks is1for10geeks
The space added string :  geeks 4 geeks   is 1 for 10 geeks 

Método #2: Usando regex + sub()

Esta es una de las formas de resolver. En esto, buscamos números en lugar de alfabetos para realizar la tarea de segregación, un enfoque similar mediante el uso de números como criterios de búsqueda para agregar espacios.

Python3

# Python3 code to demonstrate working of
# Add space between Numbers and Alphabets in String
# using regex + sub()
import re
 
# initializing string
test_str = 'geeks4geeks is1for10geeks'
 
# printing original String
print("The original string is : " + str(test_str))
 
# using sub() to solve the problem, lambda used tp add spaces
res = re.sub('(\d+(\.\d+)?)', r' \1 ', test_str)
 
# printing result
print("The space added string : " + str(res))
Producción

The original string is : geeks4geeks is1for10geeks
The space added string : geeks 4 geeks is 1 for 10 geeks

Método #3: Usando el método replace().

Cuando encuentre un carácter numérico dentro de la string, reemplace ese carácter con un espacio adjunto a la izquierda y a la derecha.

Python3

# Python3 code to demonstrate working of
# Add space between Numbers and Alphabets in String
 
# initializing string
test_str = 'ge3eks4geeks'
 
# printing original String
print("The original string is : " + str(test_str))
num="0123456789"
for i in test_str:
    if i in num:
        test_str=test_str.replace(i," "+i+" ")
res=test_str
# printing result
print("The space added string : " + str(res))
Producción

The original string is : ge3eks4geeks
The space added string : ge 3 eks 4 geeks

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 *