我想将一个字符串拆分成括号中的几个部分,但引用的内容(可能包括括号)应该被视为单个符号。例如,字符串
(id1,“Hello simple”),(id2,“你好\ n奇怪(所有字符)Ä@”)
应分为两部分
1)id1,“Hello simple”
2)id2,“你好\ n奇怪(所有字符)Ä@”
我怎样才能在Python中执行此操作?
答案 0 :(得分:0)
如果您确实需要使用regex
,则可以使用帖子中的当前字符串:
import re
pat = re.compile(r'\(([a-zA-Z0-9"\(\)\s]+)\)')
matches = re.findall(pat, '(Hello "(world)"), (2016)')
# ['Hello "(world)"', '2016']
但是,split
函数也可能是文本格式的可行选项。如果所有数据都被一对parantheses包围,您可以这样做:
results = [x[1:-1] for x in '(Hello "(world)"), (2016)'.split(', ')]
# ['Hello "(world)"', '2016']