我有一个python脚本,它生成一个curl命令并将输出读入一个名为output
的变量
输出与此类似:
"endpoint1: {
"[service1]endpoint": {
},
"[service1]endpoint": {
},
"[service2]endpoint": {
},
"[service2]endpoint": {
}
}
"endpoint2": {
"[service1]endpoint": {
}
},
我需要做的是解析此输出以计算[]之间的唯一字符串并打印出事件。所以像这样:
service1 3
service2 2
关于我如何做这件事的任何帮助。感谢。
答案 0 :(得分:0)
如果您的输入无效JSON,请使用以下方法与collections.Counter
对象和re.findall()
函数:
result = collections.Counter(re.findall(r'\[([^]]+)\]', output))
print(result)
输出:
Counter({'service1': 3, 'service2': 2})