我用的是py3.8的,想用正则匹配以下数据
{:["科目\时间",["流动资产","元",0,true,false],["货币资金","元",2,false,true],["以公允价值计量且其变动计入当期损益的金融资产","元",2,false,true],["应收票据及应收账款","元",2,false,true]}
要把里面的的字符串都提取出来,就像下面这样,每个项给追加到一个字典变量里面
科目\时间 替换成 科目\年度
流动资产(元)
货币资金(元)
按照你的要求用正则匹配出字符串后,把它们追加到一个字典中的Python程序如下
import re
dic={}
value=[]
s='{:["科目\时间",["流动资产","元",0,true,false],["货币资金","元",2,false,true],["以公允价值计量且其变动计入当期损益的金融资产","元",2,false,true],["应收票据及应收账款","元",2,false,true]}'
regex=r'"([^"]+)"'
result=re.findall(regex,s)
for i in range(1,len(result),2):
value.append(result[i]+"("+result[i+1]+")")
key=result[0]
key=key.replace("科目\时间","科目\年度")
dic[key]=value
print(dic)
源代码(注意源代码的缩进)