首页 > 解决方案 > 多行正则表达式 python,转换为 dict

问题描述

我有一些看起来像这样的命令输出。

make:   Toyota
model:  Camry
year:   2020

我想将其转换为如下所示的字典:{'make': 'Toyota', 'model': 'Camry', 'year': '2020'}

我可以一次转换一行,使用类似的逻辑make:\s*(?P<make>\w+{3-10})和类似的modeland year,但是我如何想出一个单一的正则表达式,我需要用那个正则表达式来提取我需要的信息吗?

标签: python-3.xregex

解决方案


一种使用方式yaml

import yaml

new_str = """make:   Toyota
model:  Camry
year:   2020"""

yaml.safe_load(new_str)

输出:

{'make': 'Toyota', 'model': 'Camry', 'year': 2020}

推荐阅读