tengo una cadena como "GoTo: 7018 6453 12654\n"
sólo quiero obtener el número de algo como esto ['7018', '6453', '12654']
, que trata de expresiones regulares, pero no puedo dividir la cadena para obtener sólo número aquí es mi código:¿Separar cadena y obtener el número en python?
Muestra 1:
splitter = re.compile(r'\D');
match1 = splitter.split("GoTo: 7018 6453 12654\n")
my output is: ['', '', '', '', '', '', '', '', '7018', '6453', '12654', '']
Muestra 2:
splitter = re.compile(r'\W');
match1 = splitter.split("GoTo: 7018 6453 12654\n")
my output is: ['GoTo', '', '7018', '6453', '12654', '']
+1 para no volver. También podría arrojar 'int (item)' allí, si fuera necesario más tarde. – plundra
Hice algunos 'timeit' ... Si split + isdigit es el valor base (es el más rápido), compilado re.findall es 1.5 veces más lento y uncompplicado re.findall 2.5. – plundra
Esto funciona solo si el separador es un espacio en blanco puro (por ejemplo, incluso "1, 2, 3" lo rompería) – 6502