Python | Dividir texto y número en una string

A veces, tenemos una string que se compone de texto y número (o viceversa), sin ninguna distinción específica entre los dos. Puede haber un requisito en el que necesitemos separar el texto del número. Analicemos ciertas formas en que esto se puede realizar.

Método #1: Usarre.compile() + re.match() + re.groups()
La combinación de todas las funciones de expresiones regulares anteriores se puede usar para realizar esta tarea en particular. En esto, compilamos una expresión regular y la combinamos para agrupar texto y números por separado en una tupla.

# Python3 code to demonstrate working of
# Splitting text and number in string 
# Using re.compile() + re.match() + re.groups()
import re
  
# initializing string 
test_str = "Geeks4321"
  
# printing original string 
print("The original string is : " + str(test_str))
  
# Using re.compile() + re.match() + re.groups()
# Splitting text and number in string 
temp = re.compile("([a-zA-Z]+)([0-9]+)")
res = temp.match(test_str).groups()
  
# printing result 
print("The tuple after the split of string and number : " + str(res))
Producción :

The original string is : Geeks4321
The tuple after the split of string and number : ('Geeks', '4321')

Método n.º 2: el usore.findall()
de la ligera modificación de expresiones regulares puede proporcionar la flexibilidad necesaria para reducir la cantidad de funciones de expresiones regulares necesarias para realizar esta tarea en particular. La función findall es lo suficientemente sola para esta tarea.

# Python3 code to demonstrate working of
# Splitting text and number in string 
# Using re.findall()
import re
  
# initializing string 
test_str = "Geeks4321"
  
# printing original string 
print("The original string is : " + str(test_str))
  
# Using re.findall()
# Splitting text and number in string 
res = [re.findall(r'(\w+?)(\d+)', test_str)[0] ]
  
# printing result 
print("The tuple after the split of string and number : " + str(res))
Producción :

The original string is : Geeks4321
The tuple after the split of string and number : ('Geeks', '4321')

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 *