繁体   English   中英

正则表达式匹配逗号后的词组和括号

[英]Regex match group of words and parenthesis after comma

我有一个这样的字符串:

aaaa (aa), bbbb, b2b2b2 (bbbb), ccc, c33 (ccc), ddd, d222, d33 (ddd)

我想拆分它以提取逗号后跟括号后的每个组:

aaaa (aa)
bbbb, b2b2b2 (bbbb)
ccc, c33 (ccc)
ddd, d222, d33 (ddd)

我尝试了几个正则表达式,甚至是Parse 库,但没有成功

任何想法都会受到欢迎!!

先感谢您!!

使用后视

前任:

import re

s = "aaaa (aa), bbbb, b2b2b2 (bbbb), ccc, c33 (ccc), ddd, d222, d33 (ddd)"
print(re.split(r"(?<=\)),", s))

输出:

['aaaa (aa)', ' bbbb, b2b2b2 (bbbb)', ' ccc, c33 (ccc)', ' ddd, d222, d33 (ddd)']

我不知道我们如何通过正则表达式来做到这一点,但这里有一个非常简单的衬垫:

string = '''aaaa (aa), bbbb, b2b2b2 (bbbb), ccc, c33 (ccc), ddd, d222, d33 (ddd)'''
[i.strip().strip()+")"  if ")" not in i else i.strip() for i in string.split("),")]

这使:

['aaaa (aa)', 'bbbb, b2b2b2 (bbbb)', 'ccc, c33 (ccc)', 'ddd, d222, d33 (ddd)']

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM