mam ciąg jak "GoTo: 7018 6453 12654\n"
Chcę uzyskać numer coś takiego ['7018', '6453', '12654']
, ja próbuje wyrażenie regularne, ale nie mogę podzielić ciąg dostać tylko numer tutaj jest mój kod:Podziel ciąg i po prostu uzyskać numer w python?
Próbka 1:
splitter = re.compile(r'\D');
match1 = splitter.split("GoTo: 7018 6453 12654\n")
my output is: ['', '', '', '', '', '', '', '', '7018', '6453', '12654', '']
Próbka 2:
splitter = re.compile(r'\W');
match1 = splitter.split("GoTo: 7018 6453 12654\n")
my output is: ['GoTo', '', '7018', '6453', '12654', '']
+1 dla non-Re. Można łatwo rzucić tam również "int (item)", gdyby było to później potrzebne. – plundra
Czy niektóre 'timeit' ... Jeśli split + isdigit jest wartością podstawową (jest to najszybszy), skompilowane re.findall jest 1,5 razy wolniejsze i nieskompilowane re.findall 2.5. – plundra
Działa to tylko wtedy, gdy separator jest czystym odstępem (na przykład może to być "1, 2, 3") – 6502