11
Używam wyrażeń regularnych do dzielenia ciągu za pomocą wielu ograniczników. Ale jeśli dwa z moich ograniczników występują obok siebie w ciągu znaków, umieszcza pusty ciąg w wynikowej liście. Na przykład:Dzielenie ciągu znaków z wieloma ogranicznikami w języku Python
re.split(',|;', "This,is;a,;string")
Skutkuje
['This', 'is', 'a', '', 'string']
jest jakiś sposób, aby uniknąć ''
na mojej liście bez dodawania ,;
jako separatora?
Hmm, w porządku. A co, jeśli jeden z moich ograniczników był również słowem? Na przykład: 're.split (', |; | string'," This, is; a,; string ")' –
Wtedy to zadziała: 're.split (r '[,;] + | string', 'This, is; a,; string') ' –
Teraz wynik będzie następujący:" ['This', 'is', 'a', ',' '] ' –