python怎么样获取某个文件行指定字符串后面的字符?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python怎么样获取某个文件行指定字符串后面的字符?相关的知识,希望对你有一定的参考价值。
把每行读取后去掉前面不要的部分就可以了,这种简单处理不需要用正则,正则是用来进行复杂处理的。比如读一行到s,然后
r,_,s=s.partition('指定字符串')
现在,r是不要的部分,s就是指定字符串后的部分,如果有结果的话,_的值也是指定字符串。 参考技术A 说详细点,最好举个例子追问
比如一个文件按行读取,每行都有“sfds",现在要一行行的执行读取它后面的那些字符串
参考技术B 搜索关键字正则表达式追问我想到用正规表达式了,但是不知道怎么写
参考技术C 直接取就可以了。Python提取两个字符串之间的内容
比如说文本1的内容为
/begin MEASUREMENT
100
LINK
DISPLAY
SYMBOL
/end MEASUREMENT
有好多类似格式的文本内容,我想把/begin MEASUREMENT和 /end MEASUREMENT之间的内容读取到一个新的文本中,应该怎么写代码
Python提取两个字符串之间的内容步骤如下:
1、截取前6个字符:c='12369abcdefg./.、
'print (c[0:6]) ,注意,c里面第0个字符,就是'1',是从第零个开始数的。
2、截取第六个到倒数第一个之间的字符串:
c='12369abcdefg./.、'
print (c[6:-1])
3、截取第9个字符后面所有的字符:
c='12369abcdefg./.、'
print (c[9:])
4、翻转字符串:
c='12369abcdefg./.、'
print (c[::-1])
5、翻转字符串,但是隔一个字符删掉一个字符:
c='12369abcdefg./.、'
print (c[::-2])
6、截取第三个元素和第3+9个元素:
c='12369abcdefg./.、'
print(c[3::9])
1、首先打开Python将字符串定义出来,在定义的字符串后面添加中括号,输入需要提取的字符所在的位置。
2、点击运行程序,可以看到系统打印出来我们定义的字符串中的第一个字符,因为字符串是有空格的,空格也要占用位置。
3、这里可以看到字符显示在程序运行界面下方,按照我们指定的内容输出,这里写的是0输出第一个字符。
4、同样的也可以一次性的输出多个字符,如图所示,将字符串的起始位置用冒号隔开,写在中括号内,这样就会显示多个字符。
5、这里输入的位置是第0到5,可以发现对照我们字符串中内容,相应位置上的字符被打印出来,而其它位置上的字符完全没有显示。
6、如果字符串比较大,内容比较多,从后面数比较方便,也可以直接输出倒数第几个的字符。
7、这时候直接使用负号来说明这是倒数的位置,用起来也特别方便。
参考技术B import restr = '''/begin MEASUREMENT
100
LINK
DISPLAY
SYMBOL
/end MEASUREMENT'''
regex = r'/begin MEASUREMENT([\\s\\S]*)/end MEASUREMENT'
matches = re.findall(regex, str)
for match in matches:
print(match)追问
多谢了,我意思是这些内容是在一个文本文件里,比如1.txt文件,我想把读出来的内容放到2.txt里。麻烦大神了
追答import rewith open('1.txt') as fin, open('2.txt', 'w') as fout:
text = fin.read();
regex = r'/begin MEASUREMENT([\\s\\S]*?)/end MEASUREMENT'
matches = re.findall(regex, text)
for match in matches:
fout.write(match)本回答被提问者采纳 参考技术C
以上是关于python怎么样获取某个文件行指定字符串后面的字符?的主要内容,如果未能解决你的问题,请参考以下文章