我想用逗号分割字符串,除了放在方括号中时,但是我的问题是当我有方括号时
这是一个例子:
b='hi, this(me,(you)) , hello(a,b)'
re.split(r',(?![^\(]*[\)])', b)
['hi', ' this(me', '(you)) ', ' hello(a,b)']
我期望的是:
['hi', ' this(me,(you))',' hello(a,b)']
我已经看到了与我想要的问题类似的问题,但是它不像我期望的那样起作用,我不知道为什么
1- Split string at commas except when in bracket environment
2- Python - Split by comma skipping the content inside parentheses
有什么帮助吗?
最佳答案
尝试使用模式(?!\S\)|\()
例如:
import re
b = ['hi, this(me,(you)) , hello(a,b)', 'hi, this(me,(you))']
for i in b:
print(re.split(r',(?!\S\)|\()', i))
输出:
['hi', ' this(me,(you)) ', ' hello(a,b)']
['hi', ' this(me,(you))']
关于python - 用逗号分隔字符串(括号中除外),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59660662/