首页 > 解决方案 > 提取模式中的单词

问题描述

我有以下字符串

[(net, asset), (amount, asset), (connect, asset), (net, asset), (check, asset), (service, asset), (adapt, asset)] | [(part, asset)] 

我只想提取左括号后的第一个单词。我的输出应该是 -

net amount connect net check service adapt part

数据

[(net, asset), (amount, asset), (connect, asset), (net, asset), (check, asset), (service, asset), (adapt, asset)] | [(part, asset)]

我尝试了以下。

p=re.compile("'('(.*)','")
result = p.search(data)
result.group(1)

但是这种模式匹配不起作用。请提供任何帮助

标签: pythonregex

解决方案


此处正则表达式分析:https ://regex101.com/r/kAXpNA/1 。

re.findall('\((.*?),', '[(net, asset), (amount, asset), (connect, asset), (net, asset), (check, asset), (service, asset), (adapt, asset)] | [(part, asset)]')
#['net', 'amount', 'connect', 'net', 'check', 'service', 'adapt', 'part']

推荐阅读