2 weixin 39418743 weixin_39418743 于 2017.08.31 17:09 提问

如何用Python在指定文件中查询关键字,并显示关键词前后一定范围的内容?

用Python从《巴菲特自传》文本中查询所有的“巴菲特”,查询结果为其前后“前20个字+巴菲特+后20个字”,每个结果一行。

4个回答

oyljerry
oyljerry   Ds   Rxr 2017.08.31 17:21
已采纳

先找到关键字的位置,然后截取前后对应的字符串。可以用python的find直接查找

weixin_39418743
weixin_39418743 能问下如何具体截取关键字前后的字符串吗?
11 个月之前 回复
qq_24029841
qq_24029841   2017.08.31 17:12

用正则去匹配吧,python的正则很简单

Kinship_Jade
Kinship_Jade   2017.08.31 22:28

楼上两位说的很对了。先用正则匹配到关键字的位置,再获取前后一定范围的字符串。

playboyanta123
playboyanta123   2017.09.01 17:06

都已经采纳了就没啥好说的了

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
linux下查看某关键词前后几行内容
1、一个比较方便直接的办法是 查看filename中含有abc所在行后4行内容 cat filename | grep abc -A4 查看filename中含有abc所在行前4行内容 cat filename  | grep abc  -B4 2、还有一种比较麻烦的方法是先查到你要查的那个词所在行,然后根据行号查看临近几行内容 查看filename
使用Python抓去网页中的关键字并保存指定文件中
本脚本是在python3.3下执行的,很多的脚本是2.X下,他们有不同的地方,调用文件等等很多变化,了,注意一下: GetInfoByRegex.py: #!/usr/local/bin/python3 #coding=utf-8 import re import urllib import urllib.request import os class GetDataClass:
ubuntu命令-查找某个关键字的文件所在处
grep -rl "keyword" ./    查找该目录下的带有keyword的文件,并显示其文件位置
利用python 提取log 文件中的关键句子,并进行统计分析
利用python开发了一个提取sim.log 中的各个关键步骤中的时间并进行统计的程序: #!/usr/bin/python2.6 import re,datetime file_name='/home/alzhong/logs/qtat1/R2860.01.13/sim-applycommitrollback-bld1.log' file=open(file_name,'r') acnum=[
Python生成一定范围内指定数目的无重复随机数
利用Python生成一定范围内指定数目的无重复随机数: mi为下限,ma为上限,num为数目,输出为num个数的列表 # 无重复生成一定范围内指定数目的随机数 def random_without_same(mi, ma, num): temp = range(mi, ma) random.shuffle(temp) return temp[0:num]
对指定网站查找关键字且自动下页功能代码
function find(){    var bt = win.document.documentElement.innerHTML;    for(var forI = 0; forI         if (bt.indexOf(ft[forI]) > -1){            alert('找到');            break;        }    }        ne
python提取文件中的关键词及部分上下文内容
也包含了文件夹中文件遍历# -*- coding: utf-8 -*- #允许中文注释 #需要提取文本夹下所有文本的一些信息(***有些需要转换格式****),存到一个新文件res.txt中import re #正则模块 import os #文件处理模块 import string #字符串 fres = open('C:/Users/Administrator/Desktop/res.txt'
Linux命令------------查找(文件、文件中的关键字)
1、grep :查找文件中的内容 $ grep [option] pattern [file]  例: $ grep un day Sunday    例: $ grep include doulinked.c doulinked1.c  doulinked.c:#include  doulinked.c:#include  doulinked.c:#include  dou
linux 服务器查看匹配日志 的前后几行
linux系统中,利用grep打印匹配的上下几行   如果在只是想匹配模式的上下几行,grep可以实现。   $grep -5 'parttern' inputfile //打印匹配行的前后5行   $grep -C 5 'parttern' inputfile //打印匹配行的前后5行   $grep -A 5 'parttern' inputfi
日志 查看匹配内容的前后几行
cat -n /opt/tomcat/logs/catalina.out |grep "property.cooperationResident.savebindCustomerHouse" |more  tail -f /opt/tomcat/logs/catalina.out | grep "com.agile.base.push" -i 匹配的字符串显示 grep -2