仅当字母后跟逗号+逗号+忽略括号中的逗号时,正则表达式才会拆分

2024-10-01 22:37:48 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图找出一种在正则表达式中基于逗号分割值的方法,但问题是我想忽略括号()中的逗号

例如:

'hist1234,geog293,lap_933,(a-20,110,60),(z-8,9,10),POLY5,9,3,8,ro water'

预期产出:

['hist1234', 'geog293', 'lap_933', '(a-20,110,60)', '(z-8,9,10)', 'POLY5,9,3,8', 'ro water']

我试过:,\s*(?![^()]*)表示逗号,并忽略括号中的逗号,但我不确定是否忽略后跟逗号的数字


Tags: 方法ro数字括号逗号waterlapgeog293
1条回答
网友
1楼 · 发布于 2024-10-01 22:37:48

既然您保证“括号内没有括号”,那么这就行了:

regex

,(?![^()]+\))(?=[a-zA-Z(])

更换

, 

^逗号+空格

如果正在拆分,则忽略替换

https://regex101.com/r/Mk8mAI/1

  • ,-捕获一个逗号
  • (?![^()]+\))-确保前面的内容后面没有右括号
  • (?=[a-zA-Z(])-保证前面有一个字母或括号

相关问题 更多 >

    热门问题