Python2.7 从文件中提取中文内容后使用正则查找某个信息,为什么会提示None

题目描述

需在文件中查询出一段文字

题目来源及自己的思路

相关代码

import re

data = ['2017-9-30']
file = open(u'文本提取数据.txt', 'r')
key = file.read().decode('gbk')
print key
p1 = r"营业收入"
pattern = re.compile(p1)
matcher = re.search(pattern,key)
data.append(matcher)
print data

你期待的结果是什么?实际看到的错误信息又是什么?

目前的结果:

1.公司2017年1-9月的营业收入、归属于母公司所有者的净利润和扣除非经常性损益后归属于母公司所有者净利润分别为98,768.99万元、14,079.98万元和13,649.00万元,较2016年1-9月分别同比增长10.27%、35.63%和20.30%,体现了公司良好的经营情况。
2.导致公司2015年管理费用较2014年增长较大、2016年管理费用较2015年下降的主要原因为:①2015年3月,公司注册资本由7,900.00万美元增加至9,161.256万美元,新增股东宁波领挈、宁波领荣、宁波领祺、宁波领鑫及宁波领禧为公司员工持股平台,根据公司2014年12月
['2017-9-30', None]

理想结果:

['2017-9-30', '营业收入']

阅读 1.3k
1 个回答

试一下把data.append(matcher)换成data.append(matcher.group(0))

不知道你的那个正则这样写死好不好。

完整代码:

import re

data = ['2017-9-30']
key  = """
1.公司2017年1-9月的营业收入、归属于母公司所有者的净利润和扣除非经常性损益后归属于母公司所有者净利润分别为98,768.99万元、14,079.98万元和13,649.00万元,较2016年1-9月分别同比增长10.27%、35.63%和20.30%,体现了公司良好的经营情况。
2.导致公司2015年管理费用较2014年增长较大、2016年管理费用较2015年下降的主要原因为:①2015年3月,公司注册资本由7,900.00万美元增加至9,161.256万美元,新增股东宁波领挈、宁波领荣、宁波领祺、宁波领鑫及宁波领禧为公司员工持股平台,根据公司2014年12月
"""
print (key)
p1 = r"营业收入"
pattern = re.compile(p1)
matcher = re.search(pattern,key)
data.append(matcher.group(0))
print (data)

输出

1.公司2017年1-9月的营业收入、归属于母公司所有者的净利润和扣除非经常性损益后归属于母公司所有者净利润分别为98,768.99万元、14,079.98万元和13,649.00万元,较2016年1-9月分别同比增长10.27%、35.63%和20.30%,体现了公司良好的经营情况。
2.导致公司2015年管理费用较2014年增长较大、2016年管理费用较2015年下降的主要原因为:①2015年3月,公司注册资本由7,900.00万美元增加至9,161.256万美元,新增股东宁波领挈、宁波领荣、宁波领祺、宁波领鑫及宁波领禧为公司员工持股平台,根据公司2014年12月

['2017-9-30', '营业收入']
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题