python正则表达式用跳过模式拆分某些模式

chr*_*irk 6 python regex

我想在某些模式上拆分Python字符串,而不是其他模式.例如,我有字符串

Joe, Dave, Professional, Ph.D. and Someone else
Run Code Online (Sandbox Code Playgroud)

我想拆就\sand\s,,但不, Ph.D.

如何在Python正则表达式中完成?

Qta*_*tax 3

您可以使用:

re.split(r'\s+and\s+|,(?!\s*Ph\.D\.)\s*', 'Joe, Dave, Professional, Ph.D. and Someone else')
Run Code Online (Sandbox Code Playgroud)

结果:

['Joe', 'Dave', 'Professional, Ph.D.', 'Someone else']
Run Code Online (Sandbox Code Playgroud)