使用Python中提取文本

问题描述 投票:-2回答:2

我想提取从一个文本文件中的特定部分。

例如 -

PASSED: 1  GETFILE /root/test/misc/ptolemy/erase_flash.csv  
PASSED: 4  MegaSCU -cfgclr -a0  
PASSED: 8  MegaSCU -adphwdevice -read devicetype 5 bus 1 slaveaddr 82 start 0 sz 256 -f SK83100192.vpd -a0  
PASSED: 28  VALUECHECK PACKAGE= 24.0.2-0013 in tty.log for 1 occurances!

从上面的文字我想提取“GETFILE”,“MegaSCU”,“VALUECHECK”作为我的输出。该文件是巨大的,这个文本被存储为列。

于文:我正在寻找任何选项,它会帮我解压后字“X通过”

请帮助。

python-3.x text extraction
2个回答
0
投票

方法1:你可以保持它的简单,做类似如下:

sample_txt = "PASSED: 1  GETFILE /root/test/misc/ptolemy/erase_flash.csv"

if sample_txt.startswith("PASSED"):
    output = " ".join(sample_txt.split(" ")[2:]).strip()

output将给予以下结果:

>>> GETFILE /root/test/misc/ptolemy/erase_flash.csv

方法2:为了考虑空格,你可以使用re模块的变化

import re

sample_txt = "PASSED: 28  VALUECHECK PACKAGE= 24.0.2-0013 in tty.log for 1 occurances!"

if sample_txt.startswith("PASSED"):
    output = re.split("\\s+", sample_txt)[2]
>>> VALUECHECK

0
投票

我假设X始终是一个整数。

所以,你可以删除你的字符串的开始“通过:”然后阅读次数。然后解压到一个空格。

© www.soinside.com 2019 - 2024. All rights reserved.