从元组列表中提取字符串

时间:2018-11-03 13:31:48

标签: python string nested tuples extract

所以我有这个列表,它是对SQLite的SELECT请求的结果:

test= [(('over1.5',), 109), (('ht1over0.5',), 101), (('hgover0.5',), 78),(('over2.5',), 68), (('agover0.5',), 60)]

提取引号之间的值的最佳方法是什么? 我想它必须用re.findall完成,但我不知道如何编写搜索模式。

谢谢。

2 个答案:

答案 0 :(得分:1)

假设这是Python,则可以使用列表推导。您将需要提取每个tuple中第一个元素的第一个(唯一)值:

res = [i[0][0] for i in test]

# ['over1.5', 'ht1over0.5', 'hgover0.5', 'over2.5', 'agover0.5']

答案 1 :(得分:0)

尝试以下正则表达式模式:

\(\('(.*?)',\),\s(\d+)

首先匹配“ (('”,然后创建一个Group 1,并包含任意数量的任意字符(将包含密钥),然后匹配“ ',),”,最后创建Group 2,可以是任意数字。

这将为您提供key in Group 1value in Group 2