Python int和double的正则表达式

Python int和double的正则表达式,python,regex,Python,Regex,我正在尝试查找正则表达式,以便从以下字符串中获取错误值: {'Sample': '#it{House}', 'Yield': 0.0012267869301467726, 'Error': 0} 我尝试了“'Error':(\d+。\d+)”,但我发现错误可以是整数(如0)或双精度值(如0.992)。我检查了很多情况,但仍然找不到正则表达式。如果数据确实是用yaml格式化的,您可以使用yaml模块(它不是python默认发行版的一部分)读取它: $python-c'导入yaml,sys;pri

我正在尝试查找正则表达式,以便从以下字符串中获取错误值:

{'Sample': '#it{House}', 'Yield': 0.0012267869301467726, 'Error': 0}

我尝试了
“'Error':(\d+。\d+)”
,但我发现错误可以是整数(如0)或双精度值(如0.992)。我检查了很多情况,但仍然找不到正则表达式。

如果数据确实是用yaml格式化的,您可以使用yaml模块(它不是python默认发行版的一部分)读取它:


$python-c'导入yaml,sys;print(yaml.load(sys.stdin.read())[“Yield”]”为什么要使用正则表达式?因为我是从yaml文件中读取这些值的。如果是yaml,则使用yaml模块,以便按原样获取变量。这看起来像是json,所以json模块可能会更好。json是YAML,尽管标准库有
json
模块,但没有用于YAML的模块。但是YAML不是json。该字符串不是json,因为json只使用双引号。
$ python -c 'import yaml,sys; print(yaml.load(sys.stdin.read())["Yield"])' <<<"{'Sample': '#it{House}', 'Yield': 0.0012267869301467726, 'Error': 0}"
0.00122678693015