我正在瀏覽一個json文件,並使用正則表達式來提取公司財務關鍵績效指標及其相應值的信息。例如,正則表達式爲
"grossProfits":{"raw":19805000000,"fmt":"19.8B","longFmt":"19,805,000,000"}
Python的正則表達式{
會返回19.8B。問題在於KPI何時沒有任何信息。例如 "returnOnEquity":{}
。
在這種情況下,returnOnEquity將返回正則表達式找到的下一個數字。
"returnOnEquity":{},"grossProfits":{"raw":19805000000,"fmt":"19.8B","longFmt":"19,805,000,000"}
。
因此,returnOnEquity返回的值將是grossProfits(19.8B)的值。
這裏是我當前的正則表達式r'.*?"(\d{1,8}\.\d{1,8}M?B?K?|[{}])%?'
在一個完美的世界,我希望它返回0,但即使是「{」或「}」就足夠了。
任何幫助,非常感謝。
爲什麼不使用'json'模塊? –
詳細說明一下,使用'json'模塊將會生成一個python字典,並且根本不需要嘗試使用正則表達式來解析它。只需使用密鑰來獲取您的數據。 – roganjosh
使用'json'模塊。 –