una separar separador por palabras palabra oraciones lista letras espacios comparar como cadenas python

separador - separar python



Divida una cadena con un nĂºmero desconocido de espacios como separador en Python (3)

Si tiene espacios únicos en medio de sus datos (como una dirección en un campo), aquí hay una solución para cuando el delimitador tiene dos o más espacios:

with open("textfile.txt") as f: content = f.readlines() for line in content: # Get all variable-length spaces down to two. Then use two spaces as the delimiter. while line.replace(" ", " ") != line: line = line.replace(" ", " ") # The strip is optional here. data = line.strip().split(" ") print(data)

Necesito una función similar a string.split ('''') pero puede haber más de un espacio, y un número diferente de ellos entre los caracteres significativos. Algo como eso:

s = '' 1234 Q-24 2010-11-29 563 abc a6G47er15 '' ss = s.magicSplit() print ss [''1234'',''Q-24'',''2010-11-29'',''563'',''abc'',''a6G47er15'']

¿De alguna manera puedo usar expresiones regulares para atrapar esos espacios intermedios?

¿Podría alguien ayudar, por favor?


Tratar

>>> '' 1234 Q-24 2010-11-29 563 abc a6G47er15''.split() [''1234'', ''Q-24'', ''2010-11-29'', ''563'', ''abc'', ''a6G47er15'']

O si quieres

>>> class MagicString(str): ... magicSplit = str.split ... >>> s = MagicString('' 1234 Q-24 2010-11-29 563 abc a6G47er15'') >>> s.magicSplit() [''1234'', ''Q-24'', ''2010-11-29'', ''563'', ''abc'', ''a6G47er15'']


s = '' 1234 Q-24 2010-11-29 563 abc a6G47er15 '' ss = s.split() print ss [''1234'',''Q-24'',''2010-11-29'',''563'',''abc'',''a6G47er15'']