使用re模块进行过滤

2024-04-29 01:29:34 发布

您现在位置:Python中文网/ 问答频道 /正文

我的清单如下:

['\'STATE\\\': \\\'("DEVELOPMENT COMPLETE", "DEVELOPMENT IN PROGRESS", "WIP QA")\\\'}, \']']

现在我想使用re模块从上述列表中筛选下面的部分

("DEVELOPMENT COMPLETE", "DEVELOPMENT IN PROGRESS", "WIP QA")

有人能帮我使用re模块吗


Tags: 模块inre列表qawipdevelopmentcomplete
1条回答
网友
1楼 · 发布于 2024-04-29 01:29:34

用途:

>>> l = ['\'STATE\\\': \\\'("DEVELOPMENT COMPLETE", "DEVELOPMENT IN PROGRESS", "WIP QA")\\\'}, \']'] 
>>> re.search(r'(\([^\)]*\))' , l[0]).group(1)
'("DEVELOPMENT COMPLETE", "DEVELOPMENT IN PROGRESS", "WIP QA")'

如果你想要你的结果是tuple,你可以使用ast

>>> import ast
>>> ast.literal_eval(re.search(r'(\([^\)]*\))', l[0]).group(1))
('DEVELOPMENT COMPLETE', 'DEVELOPMENT IN PROGRESS', 'WIP QA')

以防万一,如果您的列表包含多个元素,那么您可能需要迭代它,然后使用上面的re

相关问题 更多 >