Python正则表达式"而不是"

sid*_*rcy 4 python regex

在Python中,我想分开一个逗号,但如果后面跟着一个尾随空格则不行

分开我的逗号

(?:[^,]+)

我正在寻找类似的东西

(?:[^,]+)(?!:[^, ]+)
Run Code Online (Sandbox Code Playgroud)

示例情况:

"Me, Myself & Irene,The Cable Guy" 
Run Code Online (Sandbox Code Playgroud)

应该导致:

"Me, Myself & Irene"
"The Cable Guy"
Run Code Online (Sandbox Code Playgroud)

Mar*_*ers 6

你想要一个负面的预测断言,(?!...).这匹配任何没有指定模式的位置.要拆分没有空格的逗号,那就是:

,(?! )
Run Code Online (Sandbox Code Playgroud)

因为re.split()你不需要任何其他分组.

演示:

>>> import re
>>> re.split(r',(?! )', "Me, Myself & Irene,The Cable Guy")
['Me, Myself & Irene', 'The Cable Guy']
Run Code Online (Sandbox Code Playgroud)