разделение регулярного выражения - PullRequest
0 голосов
/ 11 мая 2018

Я хочу разбить строку на ', ', но не на ',, '

Так что с вводом 'abc,, def, ghi' Я хочу вывод

[ 'abc,, def', 'ghi' ]

Я пытался re.split("(?:[^,]), ",'abc,, def, ghi' ) но он удалил 'f'

есть ли способ сделать это?

1 Ответ

0 голосов
/ 11 мая 2018

Я бы рекомендовал использовать регулярные выражения:

>>> re.split('(?<!,),(?=\s)', text)
['abc,, def', ' ghi']

Подробности

(?<!   # negative lookbehind
,      # comma
)
,      
(?=    # positive lookahead
\s     # whitespace
)

Семантически это означает "разделить только на одну запятую (запятая, которой не предшествует или не следует ни одна запятая). "

...