#coding:utf-8
import re
def chunk():
lines=[]
while True:
text = input("输入一大段你需要处理的文本(回车结束输入<-):\n")
try:
if len(text)>1:
lines.append(text)
else:
break
except:
break
return lines
ec_com_dict ={}
ec_com_dict2 ={}
save_word=u"(收入+)"
cost_word=u"(支出+)"
def cost_detail(word,x,kind = "支出"):
pattern = re.compile(word)
results = pattern.findall(x)
for result in results :
if result == kind:
economic = re.findall(r"\d+\.?\d*",x)[0]
comment = x.split(economic)[-1].strip()
ec_com_dict[comment]=economic
return ec_com_dict
def save_detail(word,x,kind = "收入"):
pattern = re.compile(word)
results = pattern.findall(x)
for result in results :
if result == kind:
economic = re.findall(r"\d+\.?\d*",x)[0]
comment = x.split(economic)[-1].strip()
ec_com_dict2[comment]=economic
return ec_com_dict2
def all():
all_dic = {}
for i in chunk():
i = i.strip(" ")
# 需要查找的特定中文字符串
sa = save_detail(save_word,i,kind ="收入")
co = cost_detail(cost_word,i,kind ="支出")
all_dic = {"收入":sa,"支出":co}
return all_dic
print(all())
# pattern = re.compile(save_word)
# results = pattern.findall(i)
# for result in results :
# if result == "收入":
# economic = re.findall(r"\d+\.?\d*",i)[0]
# comment = i.split(economic)[-1].strip()
# save[comment]=economic
# if:
# pattern2 = re.compile(cost_word)
# results = pattern.findall(i)
# if result2 == "支出":
# economic2 = re.findall(r"\d+\.?\d*",i)[0]
# comment2 = i.split(economic2)[-1].strip()
# cost[comment2]=economic2
re正则学习
最新推荐文章于 2024-05-23 16:57:23 发布