如何将 re.split 用于逗号和句点?

son*_*089 2 python regex split

我有多个字符串,其中单词用逗号或句点分割:

string = ['apple,pear,grapes,carrot.cabbage,veggies.fruit,yard']
Run Code Online (Sandbox Code Playgroud)

我想根据逗号和句点拆分它:

string = ['apple','pear','grapes','carrot','cabbage','veggies','fruit','yard']
Run Code Online (Sandbox Code Playgroud)

我只知道如何为 re.split 使用一个条件:

re.split(',',string)
Run Code Online (Sandbox Code Playgroud)

这不会拆分中间有句点的单词。如何拆分整个字符串,以便在中间有逗号或句点时拆分单词?

Dan*_* D. 7

>>> import re
>>> string = 'apple,pear,grapes,carrot.cabbage,veggies.fruit,yard'
>>> re.split(',|\.',string)
['apple', 'pear', 'grapes', 'carrot', 'cabbage', 'veggies', 'fruit', 'yard']
Run Code Online (Sandbox Code Playgroud)

这使用更改运算符拆分,.(必须转义为\.|

它也可以用字符类编写:

>>> re.split('[,.]',string)
['apple', 'pear', 'grapes', 'carrot', 'cabbage', 'veggies', 'fruit', 'yard']
Run Code Online (Sandbox Code Playgroud)

但这不太普遍,因为这两个字符都不能用短语替换。