这是我的数据:
data= 'JUN 2023 02 20 INFO : data1 = data2 data3 = data4 {"app":[{"key":"app1","value":"100"},{"key":"app2","value":"200"},{"key":"app3","value":"300"}]}'
字符串
基于我这样写的模式:print(re.findall(r'(?:\w+ :)(\w+)\s*=\s*(.*?)(?=\s*\w+\s*=|$)', text))
的。运行此代码后,我得到空列表。我尝试了多种模式,没有预期的结果。
我的预期结果是
[ 'data1' = 'data2',
'data3' = 'data4'
'app1' = '100',
'app2' = '200',
'app3' = '300',
]
型
2条答案
按热度按时间vwkv1x7d1#
我看到你的字符串包含Json(?),因此可以使用
re
+json
来解析它。例如:字符串
印刷品:
型
其余的数据可以通过以下方式解析:
型
印刷品:
型
6ojccjat2#
您可以使用
re.findall
和两个正则表达式来解决它:字符串
在哪里
([^ ]+?) *= *([^ ]+)
正在搜索data1 = data2
等。\"key\"\s*:\s*\"([^\"]+)\"\s*,\s*\"value\"\s*\:\s*\"([^\"]+)\"
正在搜索"key":"app1","value":"100"
等。